【发布时间】:2016-12-04 05:44:11
【问题描述】:
SQL 查询列出所有下单数量高于平均水平的客户。
订单详情显示在 NW_orders 表中,客户信息显示在 NW_Customers 表中。
首先,我计算了所有客户的平均订单数。然后我只想拉下订单大于平均订单数的客户。
我的查询:
SELECT
C.customerid, C.companyname, COUNT(O.orderid) AS cnt
FROM
NW_customers C
LEFT JOIN
NW_orders O ON O.customerID = C.Customerid
GROUP BY
C.customerid
HAVING
cnt > (SELECT COUNT(O.OrderID) / COUNT(DISTINCT(c.customerid)) AS Avg
FROM NW_orders O
LEFT JOIN NW_customers C ON O.customerID = C.Customerid)
我收到一个错误
ORA-00904:“CNT”:无效标识符
任何人都可以帮助纠正错误吗?
【问题讨论】: