Announcement

Collapse
No announcement yet.

Perfect JOIN

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

  • Perfect JOIN

    Hallo Gurus,

    welche Bedingung bräuchte ich für ein JOIN Befehl.. und zwar habe ich 2 Tabellen:

    R_ID | Name
    -------------------
    0 | xxx
    1 | sdlad
    2 | sdnswdf


    und

    STO_ID | Bezeichnung
    -------------------
    0 | test1
    1 | test2


    ich möchte eine tabelle auf bauen die dann so aussieht:

    R_ID | Name | STO_ID | Bezeichnung
    ------------------- |------------------------------
    0 | xxx | 0 | test1
    1 | sdlad | 1 | test2
    2 | sdnswdf | |

    sorry wegen der Formatierung, sieht live anders aus! die 4 spalten sollen nebeneinander sein und die entsprechende Werte haben.. ohne irgendwelche Bedingungen.. ..

    Danke

  • #2
    select R_ID , Name , STO_ID , Bezeichnung
    from Tab1 ,tab2
    where tab1 = tab2(+)

    Comment


    • #3
      Oracle kann "jetzt" auch den left join

      Code:
      select r_id , name , sto_id , bezeichnung
        from tab1 
        left join tab2 on sto_id = r_id
      ;
      Wenn was schief gehen kann, dann geht es auch schief bzw. wenn man sich einen Fehler nicht erklären kann und dem nicht auf den Grund geht, hat das immer schlimme Folgen.

      Comment


      • #4
        Hallo DiddlMouse,

        deine Lösung geht nicht auf meine Oracle 10g... leider! haste ne andere möglichkeit?

        Comment


        • #5
          Meine Lösung geht auch auf der 10g! Welchen Fehler bekommst du?????
          Bitte immer auch den Fehler posten!!!!
          Wenn was schief gehen kann, dann geht es auch schief bzw. wenn man sich einen Fehler nicht erklären kann und dem nicht auf den Grund geht, hat das immer schlimme Folgen.

          Comment


          • #6
            Hi,

            ich bekomme keinen Fehler sondern die Spalten sto_id udn Bezeichnung aus Tab2 sind leer... leider!

            Comment


            • #7
              so - was nun?

              Code:
              drop table tab1;
              create table tab1 as
              (select 0 r_id, 'xxx' Name from dual union all
               select 1, 'sdlad' from dual union all
               select 2, 'sdnswdf' from dual)
              ;
              drop table tab2;
              create table tab2 as
              (select 0 sto_id, 'test1' Bezeichnung from dual union all
               select 1, 'test2' from dual)
              ;
              select r_id , name , sto_id , bezeichnung
              from tab1 
              left join tab2 on sto_id = r_id
              ;
              Code:
              R_ID NAME     STO_ID BEZEICHNUNG
              ============================
              0    xxx      0      test1
              1    sdlad    1      test2
              2    sdnswdf
              Wenn was schief gehen kann, dann geht es auch schief bzw. wenn man sich einen Fehler nicht erklären kann und dem nicht auf den Grund geht, hat das immer schlimme Folgen.

              Comment

              Working...
              X