MySQL有条件最大值查询



这可能是晦涩的,但我想在一个查询中设置一个整数的最大值。基本上,如果值rawsentiment大于500,我只希望它是500,但如果它小于500,我希望它使用该值。这可能吗?它看起来像这样:

SELECT avg( rawsentiment * magic_coefficient ) FROM sentiment

但是我需要做这样的事情(警告它看起来非常非sql)

SELECT avg(  ( 500 if (rawsentiment>500) else (rawsentiment) ) * magic_coefficient) FROM sentiment 

你会想要查看MySQL Least

类似于(未经测试):

SELECT AVG (least(500, rawsentiment) * magic_coefficient) FROM sentiment

你可以试试:

SELECT avg(IF(rawsentiment>500,500,rawsentiment) * magic_coefficient)
FROM sentiment

最新更新