我有这个疑问:使用函数SUM?
Select t1.col5,
t1.col6,
SUM(CASE WHEN t2.col1 = 'A' THEN t2.col2 ELSE 0
WHEN t2.col1 = 'B' THEN t2.col2 * -1 ELSE 0
END) AS price,
SUM(CASE WHEN t2.col1 = 'C' THEN t2.col2 + 100 ELSE 0
END) AS bonus
FROM t1, t2
WHERE t1.col1 = t2.col4
AND (price + bonus) <> 0
GROUP BY t1.col5,
t1.col6
,但我不能这样做(价格+奖金)<> 0?我有这个消息:价格无效的标识符! 我怎么能在WHERE中使用我的SUM的名字? 谢谢:)
聚合需要进入'HAVING'子句 - 它们不能在WHERE子句中。 – 2015-01-20 20:39:28