Select / join

Hallo,

ich habe folgende Datenstruktur:

Tabelle_A
Bezeichner wert
a 1
b 29
c 35
d 32

Tabelle_B
schluessel daten
0 a1
10 a2
12 a3
15 a4
25 a5
31 a6
40 a7

Ich suche nach einer Möglichkeit, jeder Zeile aus A die Zeile (daten) aus B zuzuordnen, bei der b.schluessel > a.wert ist, und b.schluessel der jeweils kleinste Wert ist, der Bedingung erfüllt, also
a => a2
b => a6
c => a7
d => a7

möglichst in einer Query für alle Werte aus A. Das Ganze für mySQL 4. Geht das ?

Alexander

Hallo Alexander,

So sollte es etwa gehen:

SELECT \*
FROM A, B
WHERE b.schlüssel = (SELECT MIN(B.schlüssel) WHERE b.schlüssel \> A.schlüssel)

Aber nicht auf allen Versionen von MySQL 4.x. Erst die Höheren Versionen unterstützen geschachtelte Selects. (Kann sein ab der 4.1.14. Die 4.0.25 kann es jedenfalls noch nicht)

Gruß

Peter

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Danke o.w.T.
…funktioniert.