我有以下表格:
–客户(custID)
–订单(orderID,custID)
– PO(产品ID,订单ID,数量)
我想选择每个custID和订购的产品总数。我有以下代码:
SELECT c.custId (COUNT(po.amount)) totalOrders FROM Customer c INNER JOIN "Order" o ON c.custId = o.custId INNER JOIN PO po ON o.orderId=po.orderId; 我收到以下错误:找不到列“ c”或用户定义的函数或聚合“ c.custId”,或者名称不明确。
问题来源于stack overflow
您需要一个group by。您不需要客户表。您要的SUM()不是COUNT()`。而且您的语法刚刚关闭:
SELECT o.custId, SUM(po.amount) as totalOrders FROM "Order" o INNER JOIN PO po ON o.orderId=po.orderId GROUP BY o.custId;
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。