我想做以下事情:

从TABLE

中选择sum(max(field-10,000,0))

如同,我希望将字段10,000总结,但是如果字段10,000 <!> lt; 0然后我希望它添加0。

有什么建议吗?

卡尔

有帮助吗?

解决方案

ANSI语法(由SQL ServerOracleMySQLPostgreSQL支持):

SELECT  SUM(CASE WHEN FIELD < 10000 THEN 0 ELSE FIELD - 10000 END)
FROM    mytable

使用GREATEST(<=>不支持):

SELECT  SUM(GREATEST(field - 10000, 0))
FROM    mytable
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top