【发布时间】:2016-02-12 16:58:02
【问题描述】:
ORACLE SQL
我有一个表 CUSTOMER_UNITS
CUSTOMER_ID UNITS_SOLD
AAAA 350
BBBB 150
CCCC 650
DDDD 250
AAAA 950
BBBB 450
CCCC 450
DDDD 350
我需要编写一个查询,将 SUM(UNITS_SOLD) 每个 CUSTOMER_ID, WHERE UNITS_SOLD >= 350 给我一个总数。所以基本上结果应该是:
CUSTOMER_ID UNITS_SOLD
AAAA 1300
BBBB 450
CCCC 1100
DDDD 350
我厌倦了下面的代码:
SELECT
CUSTOMER_ID
,SUM(UNITS_SOLD)
FROM
(SELECT DISTINCT CUSTOMER_ID, UNITS_SOLD FROM CUSTOMER_UNITS)
WHERE UNITS_SOLD >= 350
GROUP BY CUSTOMER_ID;
但它返回一个错误; ORA-00904: "UNITS_SOLD": 标识符无效
很抱歉问这个问题,我知道它一定非常简单,但我已经尝试了至少 15 条建议,但没有成功。
【问题讨论】:
-
我不知道你为什么使用那个子查询,但无论如何,你只需要给它一个别名:
FROM (SELECT DIS......) AS T