Re: Select, vielleicht UNION oder LEFT JOIN?
Du musst die user Tabelle zweimal in die Abfrage
einbinden, einmal für den Schenker und einmal
für den Beschenkten. Das geht mit Table Aliases
in der Form "table_name AS alias_name" im FROM-
Teil:
SELECT user_from.name
, user_to.name
, geschenk.name
, user_to_geschenk.`timestamp`
FROM user_to_geschenk
, user AS user_from
, user AS user_to
, geschenk
WHERE user_to_geschenk.user_id_send = user_from.id
AND user_to_geschenk.user_id_become = user_to.id
AND user_to_geschenk.geschenk_id = geschenk.id
;
oder in JOIN-Schreibweise:
SELECT user_from.name
, user_to.name
, geschenk.name
, user_to_geschenk.`timestamp`
FROM user_to_geschenk
JOIN user AS user_from
ON user_to_geschenk.user_id_send = user_from.id
JOIN user AS user_to
ON user_to_geschenk.user_id_become = user_to.id
JOIN geschenk
ON user_to_geschenk.geschenk_id = geschenk.id
;
--
Hartmut Holzgraefe, MySQL Regional Support Manager EMEA
Sun Microsystems GmbH, Sonnenallee 1, 85551 Kirchheim-Heimstetten
Amtsgericht Muenchen: HRB161028
Geschaeftsfuehrer: Thomas Schroeder, Wolfgang Engels, Dr. Roland Boemer
Vorsitzender des Aufsichtsrates: Martin Haering