Announcement

Collapse
No announcement yet.

2 Tabellen mehrere Datensätze in eine Reihe

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

  • 2 Tabellen mehrere Datensätze in eine Reihe

    Hallo,

    ok, der Topictitel ist nicht gerade selbsterklärend, sorry!

    Ich versuch mal mein Problem zu beschreiben.

    Ich habe 2 Tabellen z.B. Fahrt und Fahrtadressen
    In Fahrt habe ich folgende Spalten... ID, Fahrgast
    In Fahrtadressen habe ich diese Spalten... ID, Strasse, Ort, Adresstyp
    Ein Eintrag in Fahrt sieht also so aus... 201, Hr. Fritz
    Eintrag in Fahrtadresse... 201, Keplerstr., Aort, Abfahrt
    201, Glückstr., Zort, Ziel

    Mit einer Abfrage möchte ich jetzt dies vereinen und zwar damit diese Zeile rauskommt...
    201, Hr. Fritz, Keplerstr., Aort, Glückstr., Zort

    Bitte um Hilfe wie ich das abfragen kann, da stehts bei mir leider an.

    Danke und freundliche Grüße,
    Daniel

  • #2
    Da du in Tabelle 2 keinerlei Refernzen zu Tabelle 1 hast, wird das nicht gehen.
    Wie soll der Fahrgast Tabelle 2 zugeordnet werden? Sofern es sich um die ID handelt fehlt deiner Tabelle 2 eine Spalte zu Identifikation des Datensatzes
    Ansonsten wäre das

    select * from Tab1,Tab2 where Tab1.ID=Tab2.ID
    Christian

    Comment


    • #3
      aber die id verbindet die beiden doch?
      wenn ich jetzt sage
      select * from Fahrt, Fahrtadresse where Fahrt.ID = Fahrtadresse.ID;
      dann bekomme ich ja wieder 2 Datensätze...möchte die aber vereinen.
      Pro ID soll nur 1 Datensatz rauskommen...

      Comment


      • #4
        Tabelle 2 bekommte eine Spalte ID zur Identifikation der Datensätze. Die bisherige Spalte ID wird ID_FAHRT.

        Wenn du die 2 Zeilen vereinen willst

        https://www.techonthenet.com/oracle/pivot.php

        Allerdings erschließt es sich nicht, alle Datensätze hier hintereinander zu haben
        Christian

        Comment


        • #5
          Vielleicht hab ich die Aufgabe nicht richtig verstanden, aber ich vermute, es geht darum je Fahrt Start und Ziel in einer Zeile aufzuführen.
          Das Datenmodell (Referenzen) scheint dafür zu reichen.

          Code:
          select *
            from Fahrt f
            join Fahrtadressen a  on f.id= a.id and a.adresstyp='Abfahrt'
            join Fahrtadressen z  on f.id= z.id and z.adresstyp='Ziel'

          *)
          Ob das Ergebnis nun mit einzelnen Spalten gemäß Datenquelle selektiert wird oder als zusammengefasster String, hab ich mal außen vor gelassen, kann der @dwdrumsschalli machen wie er will.

          Comment

          Working...
          X