Martin Hein: verschachteltes Select-Statement in 4.0

Beitrag lesen

sorry, so weit, dass der abgetippt werden will,
hab ich nicht gedacht.

sorry, ich denk immer, die aufgabenstellung sei
jedem anderen so klar, wie mir.
das kann sie natürlich nicht sein ;)

ich versuch's nochmal anders zu beschreiben:

in jedem datensatz stehen immer die felder
d1, d2, d3, site_title und site_id.

ich habe eine site_id. mit der hole ich mir einen
datensatz (WHERE site-id=99). nun will ich alle
datensätze, bei denen d1 gleich dem ergebnisdatensatz
ist, d2 und d3 aber 0 und bei denen d1 und d2 gleich
dem ergebnisdatensatz, d3 aber 0 ist.

site_id link_title        d1 d2 d3
------- ----------------- -- -- --
3       Unsere Leistungen 1  0  0
7       Zähne             1  4  0
99      Zahnvorsorge      1  4  3

Mit drei Select-Statements sähe das in etwa so aus:

SELECT d1, d2, d3 ...
WHERE
site\_id = ".$site_id."
=> $d1, $d2, $d3

SELECT site\_id ...
WHERE d1 = ".$d1."
AND d2 = ".$d2."
AND d3 = ".$d3."
=> $site_id1 (ist überflüssig, weil diese site_id ist ja bekannt)

SELECT site\_id ...
WHERE d1 = ".$d1."
AND d2 = ".$d2."
AND d3 = 0
=> $site_id2

SELECT site\_id ...
WHERE d1 = ".$d1."
AND d2 = 0
AND d3 = 0
=> $site_id3

... und so ist es auch zur zeit gelöst.

beste gruesse,
martin