我不太清楚标题中的这个问题。这是我在学校的作业,我似乎无法用我目前的知识来解决。 我有下表:
我的问题询问以下内容:Determine the order total for each order that has an order total greater than 100. Display ‘Order Id’ and ‘Order Total’. Make sure the results are in ascending order total sequence.
这是我的查询:
SELECT order_id, SUM(qty*order_price) as Order_Total
FROM alp_orderline
GROUP BY order_id
HAVING Order_Total > 100
ORDER BY Order_Total ASC
但是,它仅查看order_id
的第一次出现。我希望它接受具有相同ID的所有行,然后查看其中的不同inv_id
,将qty
乘以order_price
并求和。
答案 0 :(得分:0)
如果要查看不同的inv_id,则只需要再添加一个分组依据,就像这样:
SELECT
order_id,
inv_id,
SUM(qty*order_price) as Order_Total
FROM alp_orderline
GROUP BY
nv_id,
rder_id
HAVING Order_Total > 100
ORDER BY Order_Total ASC;
您还可以使用子查询,然后在外部查询中使用以下条件:
订单总数> 100