0
我正在处理SQL Server 2012中的查询,但我被卡住了。基本上我需要从按国家和产品名称排序的一组行中获得排名前1的销售行。 3列由3个不同的表:SQL Server如何从一组行中获得最高销售排
SELECT
c.Country, p.ProductName AS [Product Name],
SUM(o.TotalPrice) AS [Sales Revenue]
FROM
Orders o
JOIN
Customers c ON o.CustomerID = c.CustomerID
JOIN
Products p ON o.ProductID = p.ProductID
GROUP BY
c.Country, p.ProductName
ORDER BY
c.Country, SUM(o.TotalPrice) DESC
我得到以下结果:
Customers, Product, Orders
运行此查询后
Country Product Name Sales Revenue
---------------------------------------------
Argentina Marmalade 2620.00
Argentina Queso Cabrales 630.00
Austria Spegesild 432.00
Belgium Courdavault 4950.00
Belgium Ipoh Coffee 2557.60
Belgium Flotemysost 1505.00
Belgium Alice Mutton 1248.00
我需要的结果显示完全一样以上表格格式:
Country Product Name Sales Revenue
---------------------------------------------
Argentina Marmalade 2620.00
Austria Spegesild 432.00
Belgium Courdavault 4950.00
试图在sum()上使用max,但它没有工作。也尝试了TOP 1,但无法弄清楚。请帮忙。谢谢!
嗨ddrjca,这一个作品完美!谢谢 – Sunshine