php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Hilfe bei MySQL-Abfrage


 
videlius
01-02-2012, 13:57 
 
Hallo, ich bräuchte mal Hilfe bei der Formulierung einer Abfrage für MySQL

Ich habe ein Tabelle_A mit Spalte ZAHL_A und eine Tabelle_B mit Spalte ZAHL_B
Die Abfrage soll genau eine Zahl_B auf auswerfen und zwar die Zahl, bei der die Differenz von ZAHL_A und ZAHL_B am niedrigsten aber größer 0 ist (es können auch neg. Differenzen entstehen).

mein bisheriger Ansatz ist der folgende:

SELECT TAB_B.ZAHL_B, (MIN(TAB_A.ZAHL_A - TAB_B.ZAHL_B))
FROM TabelleA TAB_A, TabelleB TAB_B
WHERE TAB_A.ZAHL_A > TAB_B.ZAHL_B;

Die Abfrage liefert mir aber ein ergebnis mit zwei Spalten. Ich brauch aber nur die ZAHL_B da diese als eingabe in eine Bedingung einer anderen Abfrage dienen soll.

Wie könnte ich das anders schreiben?

 
Kropff
01-02-2012, 22:08 
 
Auf die Schnelle und völlig ungetestet:
SELECT
TAB_B.ZAHL_B
FROM
TabelleA TAB_A,
TabelleB TAB_B
WHERE TAB_A.ZAHL_A > TAB_B.ZAHL_B
AND TAB_B.ZAHL_B > 0
AND MIN(TAB_A.ZAHL_A - TAB_B.ZAHL_B);

Peter


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:45 Uhr.