tres: fremdschlüssel ist NULL

Hi, ich habe folgendes Problem:

Tabelle 1
---------
ID
tab2_ID

Tabelle 2
---------
ID
Feld

Ich möchte nun folgendes resultset erhalten:
Resultset
----------
tab1.ID
tab2.Feld

Die beiden sind ja über den Fremdschlüssel verbunden. ISt allerdings tab2_ID = 0 oder NULL, sollte der Eintrag trotzdem angezeigt werden, einfach mit dem Wert bei tab2.Feld: KEIN FELD

Wie geht das?

  1. Die beiden sind ja über den Fremdschlüssel verbunden. ISt allerdings tab2_ID = 0 oder NULL, sollte der Eintrag trotzdem angezeigt werden, einfach mit dem Wert bei tab2.Feld: KEIN FELD

    Soweit ich weiß, muss man dafür einen OUTER JOIN (liefert auch ein Ergebnis, wenn die Bedingung von einer Seite nicht erfüllt wird) verwenden, wenn dir das weiter hilft. Genaueres weiß ich leider selber nicht.
    lg Gerhard

  2. Tag tres.

    Resultset

    tab1.ID
    tab2.Feld
    Die beiden sind ja über den Fremdschlüssel verbunden. ISt allerdings tab2_ID = 0 oder NULL, sollte der Eintrag trotzdem angezeigt werden, einfach mit dem Wert bei tab2.Feld: KEIN FELD

    Welche Datenbankversion verwendest du? Für mySQL wäre LEFT JOIN die richtige Wahl:

    SELECT tab1.ID AS Tabellenindex, tab2.Feld AS Feldwert  
    FROM tab1 LEFT JOIN tab2  
    ON tab1.tab2_ID = tab2.ID
    

    So in etwa müsste es funktionieren. Du könntest auch LEFT OUTER JOIN schreiben, das ist aber (wenn ich das Manual richtig verstehe) nur aus Kompatibilitätsgründen nötig.

    Siechfred

  3. Hi,

    du hast die Antwort schon bekommen (Stichwort LEFT JOIN), aber ich will trotzdem noch auf unsere Artikel im Beta-Stadium hinweisen:
    Einführung Joins
    Fortgeschrittene Join Techniken

    MfG
    Rouven

    --
    -------------------
    ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
      1. Hi Siechfried,

        Sehr schön. Wann ist denn mit der Endfassung zu rechnen?

        Keine Ahnung, der Redaktionsprozess hängt *g*. Es gibt schon seit längerem neuere Versionen...

        MfG
        Rouven

        --
        -------------------
        ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(