【发布时间】:2019-07-11 04:38:12
【问题描述】:
我正在运行以下 SQL 查询来选择 https://www.w3schools.com/sql/trysql.asp 中每个产品类别中价格最高的产品
SELECT p.ProductID, p.productName, p.Price, p.CategoryID, c.CategoryName
FROM [Categories] c
LEFT JOIN [Products] p
ON (c.CategoryID = p.CategoryID)
WHERE Price IN (SELECT Max(Price) FROM Products GROUP BY CategoryID)
ORDER BY p.CategoryID
但是,生成的输出为某些类别(如类别 3 和 4)提供了 2 个结果。为什么会发生这种情况?以及如何修改代码以获得每个代码的最高结果?另外,我如何获得每个类别的最低值?
【问题讨论】:
标签: sql sql-server