Announcement

Collapse
No announcement yet.

join, left join, right join, outer join, inner join

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • join, left join, right join, outer join, inner join

    hi,

    kann mir mal nochmal jemand in einfachem deutsch, dass mit den joins erklären. irgendwie blicke ich es nicht so ganz!!<br>

    gruß

    markus
    Herzliche Grüße

    Markus Lemcke
    barrierefreies Webdesign

  • #2
    Hallo Markus,

    das geht am besten mit einem praktischen Beispiel, bei dem Du das Ergebnis der unterschiedlichen Wege "vor Augen" hast. In meinem Buch <i>Client/Server Datenbankentwicklung mit Delphi</i> sind diese Beispiele auf den Seiten 239 bis 245 zu finden

    Comment


    • #3
      danke andreas
      Herzliche Grüße

      Markus Lemcke
      barrierefreies Webdesign

      Comment


      • #4
        Hi Markus,

        die Antwort von oben war ja schon fast wieder lustig: "Kauf mein Buch und dann weisst Du's".

        Für den Fall, daß Du noch keine HIlfe gefunden hast, möchte ich Dir mal kurz erläutern, was ein Join ist (meinem Kenntnisstand nach):

        Ein Join sieht als SQL-Statement ungefähr so aus:

        <b>SELECT Feld1,Feld2 FROM Tabelle1,Tabelle2
        WHERE (Tabelle1.Feld1 = Tabelle2.Feld2></b>

        Der Kram hinter der "WHERE" Bedingung ist besagter "JOIN".
        Ein Join verbindet Tabellen über bestimmte GLEICHE Felder (meist der Primary Key) um mehr der weniger die Perfomance der Abfrage zu erhöhen. Die Felder die man joint, müssen den gleichen Inhalt haben, sind also so eine Art ID. Ich nenne diese Felder meist auch ID

        In der Praxis sieht das so aus, daß ich (arbeite mit Access-DB bei einer große Telekommunikationsfirma in FFM) eine Userabfrage per SQL in eine Access-Abfrage einlese und danach ausführe. Der User klickt sich per Pulldown seine gewünschten Felder zusammen. Die Joins übernehmen in diesem Fall die Aufgabe die unzähligen Tabellen zu verknüpfen, da der User z.Bsp. ein Feld aus der Tabelle 1 und noch eins aus Tabelle 10 und wiederum eins aus Tabelle 102. Jede Tabelle besitzt eine ID und die Abfrage findet über diese so ihren Weg ...

        Wenn Dir das zu schnell war, dann antowrte einfach hier im Forum auf diese Nachricht. Ich gebe Dir dann meine Email Adresse und erkläre Dir das mal anhand von Beispielen (mySQL oder Access)in Ruhe.

        Gruß
        Christian

        P.S.: Bin ein schlechter Erklärer, daher könnte Dir das ganze auch etwas Spanisch vorkommen

        Comment


        • #5
          hi christian,

          viiiiiiiiiiieeeeeeeeeeeeeeeeelen dank für deine ausführliche erklärung!

          ich kann dich beruhigen... ich hatte schon das buch *fg

          gruß

          marku
          Herzliche Grüße

          Markus Lemcke
          barrierefreies Webdesign

          Comment


          • #6
            @Christina Böhm

            Jetzt wissen wir immer noch nicht, was ein outer oder inner Join
            ist.

            Gruß Hors

            Comment


            • #7
              Hallo,

              die Sache lässt sich nun mal nur mit einer praktischen Vorführung (oder mit Abbildungen) gut erklären. Daher die Kurzfassung:

              JOIN = Ergebnismenge der SELECT-Abfrage stammt aus verschiedenen Tabellen

              INNER JOIN = In der Ergebnismenge der SELECT-Abfrage sind nur die Datensätze enthalten, die als Schnittmenge in <b>allen</b> beteiligten Tabellen vorkommen. Alle beteiligten Tabellen benötigen dazu eine Spalte, über die die Zuordnung möglich ist.

              OUTER JOIN = In der Ergebnismenge der SELECT-Abfrage sind alle Datensätze einer Tabelle enthalten, auch wenn es zu diesen Datensätzen in den anderen beteiligten Tabellen keine Schnittmenge gibt. Die Position dieser Tabelle legen die Anweisungen LEFT OUTER JOIN, RIGHT OUTER JOIN und FULL OUTER JOIN fest.

              SELF JOIN = In der Ergebnismenge der SELECT-Abfrage sind alle Datensätze einer Tabelle enthalten, wobei die SELECT-Abfrage diese eine Tabelle als zwei unterschiedliche Datenmengen betrachtet, die miteinander verknüpft werden

              Comment

              Working...
              X