Alex: mysql, Zuordnungs Problem bei Select Abfrage

Ich habe eine Tabelle

ID ! ZUORDNUNG ! NAME
---------------------------
1  !    0      ! Donau
2  !    0      ! Rhein
3  !    1      ! Wien
4  !    2      ! Köln
5  !    1      ! Passau

wenn ich

select id,name from tabelle WHERE zuordnung >0

abfrage , bekomme ich

ID ! NAME
------------
3  ! Wien
4  ! Rhein
5  ! Passau

wie kann ich es machen das ich auch noch die Zurodnung bekomme?

also:

ID ! NEU      ! NAME
-------------------------
3  ! Donau    ! Wien
4  ! Rhein    ! Köln
5  ! Donau    ! Passau

Alex

  1. Hallo,

    ID ! ZUORDNUNG ! NAME

    1  !    0      ! Donau
    2  !    0      ! Rhein
    3  !    1      ! Wien
    4  !    2      ! Köln
    5  !    1      ! Passau

    select id,name from tabelle WHERE zuordnung >0

    ID ! NAME

    3  ! Wien
    4  ! Rhein
    5  ! Passau

    wie kann ich es machen das ich auch noch die Zurodnung bekomme?

    ID ! NEU      ! NAME

    3  ! Donau    ! Wien
    4  ! Rhein    ! Köln
    5  ! Donau    ! Passau

    mit einem Selfjoin über die Spalten "ZUORDNUNG" und "ID" oder mit einem Subselect.

    Freundliche Grüße

    Vinzenz

  2. Tach auch.

    ID ! ZUORDNUNG ! NAME

    1  !    0      ! Donau
    2  !    0      ! Rhein
    3  !    1      ! Wien
    4  !    2      ! Köln
    5  !    1      ! Passau

    Ich nehme mal an, dass ZUORDNUNG eine ID derselben Tabelle beschreiben soll.
    Dann ist es mindestens unüblich, wenn nicht ungeschickt, den Wert "0" als "hat keine Zuordnung" zu nutzen.

    Du kannst damit keine Foreign Key-Constraints nutzen, die dir helfen, deine Daten konsistent zu halten. Üblicherweise nutzt man dafür den Nicht-Wert NULL.

    Bis die Tage,
    Matti