有一张账单清单,我想知道每个客户按 id 分组的销量。每张账单都有一个负责人(一位店员,要么是表中的顾客),所以我想拿起最后一张账单的人并将其包含在结果中。
结果应该是这样的:客户 - 账单总和 - 最后一张账单的负责人。
由于 Oracle 没有“限制”选项(我们还没有 12c),所以我必须使用子选择来完成。这意味着我无法比较客户的 ID,因为它超出了范围(请参阅下面的代码)。欢迎任何建议。
SELECT customer.NAME, SUM(bills.SUME),
(SELECT responsibleP FROM
(SELECT responsibleP FROM bills b WHERE b.responsibleP = customer.id
order by asc billDate)
WHERE ROWNUM = 1)
FROM customer, bills
WHERE customer.id = bills.customerid
GROUP BY customer.id;
在这种情况下,b.responsible无法从 customer 表中获取customer.id 。
请随意更改标题,我不是很擅长,对不起!