我有张桌子:
PROCEDURE
---------
id INT
SERVICE_TYPE VARCHAR(20)
TIMEUNITS (INT)
UNITS (INT)我试图运行以下sql代码:
select SERVICE_TYPE,
case when TIMEUNITS > 1 THEN SUM(1)
WHEN UNITS > 1 THEN SUM(UNITS)
END
group by SERVICE_TYPE我的问题是我被告知TIMEUNITS不是按.
如何修复此查询?谢谢
发布于 2018-03-07 21:24:30
对于条件聚合,case表达式是聚合函数的参数。例如,要获得timeunits > 1所在的行数
select SERVICE_TYPE,
sum(case when timeunits > 1 then 1 else 0 end)
from t
group by SERVICE_TYPE;https://stackoverflow.com/questions/49161432
复制相似问题