在查找最便宜的商品时如何让 ORDER BY 按字母顺序输出
How to get ORDER BY to output alphabetically when looking for the cheapest item(s)
我有一个 table 看起来像这样:
Products
| id | name | price |
| 1 | peaches | 3 |
| 2 | oranges | 3 |
| 3 | lemons | 3 |
| 4 | apricots| 3 |
我需要能够在列表中找到最便宜的产品 + 价格,但如果它们的价格都相同,那么只需按字母顺序输出最便宜的产品之一。在这种情况下是 apricots 3
.
我编写的查询适用于除此特定情况之外的所有情况,其中有超过 1 个相同的“最便宜”价格。
SELECT name, MIN(price)
FROM Products
ORDER BY name ASC, price
在本例中,它输出 peaches 3
因为它是列表中的第一项。当 MIN(price)
在所有变量中都相同时,如何让它按字母顺序输出变量?
使用这个
SELECT name, MIN(price)
FROM Products
ORDER BY price,name
你可以这样做:
select *
from products
order by price, name
limit 1
我有一个 table 看起来像这样:
Products
| id | name | price |
| 1 | peaches | 3 |
| 2 | oranges | 3 |
| 3 | lemons | 3 |
| 4 | apricots| 3 |
我需要能够在列表中找到最便宜的产品 + 价格,但如果它们的价格都相同,那么只需按字母顺序输出最便宜的产品之一。在这种情况下是 apricots 3
.
我编写的查询适用于除此特定情况之外的所有情况,其中有超过 1 个相同的“最便宜”价格。
SELECT name, MIN(price)
FROM Products
ORDER BY name ASC, price
在本例中,它输出 peaches 3
因为它是列表中的第一项。当 MIN(price)
在所有变量中都相同时,如何让它按字母顺序输出变量?
使用这个
SELECT name, MIN(price)
FROM Products
ORDER BY price,name
你可以这样做:
select *
from products
order by price, name
limit 1