我正在尝试编写一个子查询,该子查询将选择最高价格以及与该最高价格关联的商品名称。
例如:
ID | Price | Item Name
1 | 28.99 | Lamp
2 | 13.99 | USB Cable
我期望通过子查询得到“28.99”和“Lamp”。主要查询如下所示:
SELECT
i.id
FROM
inventory i
主查询中的子查询如下所示:
SELECT
i.id,
(SELECT MAX(pl.price) FROM price_list pl WHERE pl.id = i.id) AS highest,
(SELECT MAX(pl.item_name) FROM price_list pl WHERE pl.id = i.id) AS highestName
FROM
inventory i
但是,在项目名称上使用 MAX() 将返回排名最高的字母名称,这不是我想要的。我想获取与最高价格相关的商品名称。最有效的方法是什么?
最佳答案
您可以使用子查询来匹配 where
select price as highest , item_name highestName
from price
where price = (
select max(Price)
from price_list
)
关于sql - 从 MAX() 查询中获取相关字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48468540/