我想从MySQL中某个特定字段具有最小值的表中选择数据,我已经尝试过:
SELECT * FROM pieces WHERE MIN(price)
请帮助?
这将为您提供在所有记录中具有最低价格的结果。
SELECT *
FROM pieces
WHERE price = ( SELECT MIN(price) FROM pieces )
这是我会做的(假设我理解这个问题)
SELECT * FROM pieces ORDER BY price ASC LIMIT 1
如果您尝试选择多个行,每个行的价格可能相同(这是最小值),则@JohnWoo的答案就足够了。
基本上,这里我们只是按照价格从小到大的顺序对结果进行排序(递增),并取结果的第一行。
使用HAVING MIN(...)
类似:
SELECT MIN(price) AS price, pricegroup
FROM articles_prices
WHERE articleID=10
GROUP BY pricegroup
HAVING MIN(price) > 0;
实际上,取决于您想要获得什么:-只是最小值:
SELECT MIN(price) FROM pieces
具有最小值的表(多行):如John Woo所述。
但是,如果可以是具有相同最小值的不同行,则最好是从另一列中对其进行排序,因为在此之后(或稍后),您需要这样做(从John Woo回答开始:]]
选择*从件价格=(从件中选择最小(价格))按库存ASC订购
这也有效:
有效方式(具有任意数量的记录):
为了简化