此查询(最小可重现的示例):
WITH t as ( SELECT 3 id, 2 price, 0 amount ) SELECT CASE WHEN amount > 0 THEN SUM(price / amount) ELSE price END u_price FROM t GROUP BY id, price, amount
在PostgreSQL 9.4抛出
被零除
没有SUM它的工作原理.
SUM
这怎么可能?