2017-02-28 2 views
0

Ich möchte eine Abfrage schreiben, um die billigste (n) Artikel in einer Tabelle zu finden. So kann sagen, ich habe eine Tabelle mit:So finden Sie die niedrigsten Preis Artikel in einer Liste

ID Price 
123 4  
234 5 
456 6  
567 4 

So würde ich ein Ergebnis will, das aus druckt:

123  
567 

ich geschrieben habe

select id, min(price) 
from list 

aber druckt sowohl den Preis und id. Und ich will nur die ID.

Ich habe auch versucht

select id, min(price) 
from list 
group by id 

zu versuchen und zu multiplizieren Einzelteile zu erhalten, wenn einige Elemente die gleichen niedrigsten Preis haben. Aber dadurch wurde die gesamte Tabelle ausgedruckt. Ich bin ratlos, was ich tun soll.

Antwort

3

Sie könnten nur verwenden:

SELECT id 
FROM list 
WHERE price = (SELECT MIN(price) FROM list); 
+0

Danke! Ich dachte daran, ein wo zu verwenden, war mir aber nicht sicher, wie ich es schreiben sollte. –

0

die unter Abfrage Versuchen.

SELECT 
    id 
FROM list 
WHERE price IN (SELECT 
    MIN(price) 
FROM list) 
Verwandte Themen