我有一个表ORDERS
,其中包含NAME
列和AMOUNT
列。
我需要获得每个产品的NAME
和AMOUNT
。
我有这样的解决方案
select PRODUCT_NAME, SUM(AMOUNT) from ORDERS GROUP BY PRODUCT_NAME;
但我不使用任何子查询来实现这一点。但是,我经历的教训是关于子查询。这个解决方案可能是我错了吗?
答案 0 :(得分:0)
它是一个简单的聚合查询,不需要像以下那样的子查询:
SELECT name, SUM(AMOUNT)
FROM Orders
GROUP BY name
答案 1 :(得分:0)
这个解决方案非常好:
selectname, sum(amount)
from Orders
group by name
但是,如果你必须使用子查询,请使用:
select o2.name,
(select sum(amount)
from Orders o1
where o1.name = o2.name) as total
from
(select distinct name
from Orders) o2