ich habe die folgenden beiden SELECT-Anweisungen, die ich gerne zu einer einzigen zusammenschachteln würde. Die MySQL-Hilfe hat mir als SQL-Laien nicht so weit geholfen.
SELECT s FROM s\_a WHERE ab = "A"
SELECT s FROM a\_s WHERE s = "xyz"
Dabei ist „xyz“ das Ergebnis der ersten Abfrage, genauer gesagt: eine Zeile dieses Ergebnisses.
Alternativ könnte ich also auch die erste SELECTion machen, das zurückgegebene einspaltige Recordset Zeile für Zeile durchgehen und die jeweiligen Inhalte in einer Schleife der zweiten SELECTion als Parameter anbieten.
Um die Schleife zu verhindern, möchte ich das alles aber gerne in einem Befehl haben, wie gesagt.
Randbedingung ist übrigens noch, daß ich per ODBC auf die Datenbank gehe.
inzwischen habe ich noch zigmal rumprobiert und es zumindest innerhalb von MySQL hingekriegt. Mal sehen, ob es auch über ODBC funktioniert.
Lösung:
SELECT anschlussstellen.Anschlussstelle
FROM anschlussstellen
LEFT JOIN strecke\_ab
ON anschlussstellen.Strecke = strecke\_ab.Strecke
WHERE strecke\_ab.Autobahn = "A4"
ich habe die folgenden beiden SELECT-Anweisungen, die ich
gerne zu einer einzigen zusammenschachteln würde. Die
MySQL-Hilfe hat mir als SQL-Laien nicht so weit geholfen.
SELECT s FROM s_a WHERE ab = „A“
SELECT s FROM a_s WHERE s = „xyz“
wenn ich dich richtig verstanden habe sollte dies auch funktionieren (und das ist dann glaube ich auch ANSI SQL):
SELECT s FROM a_s WHERE „xyz“ in (SELECT s FROM s_a WHERE ab = „A“)