SUM 相信大家都会用, 例如:
SELECT SUM(extcredits1) AS e1 FROM pre_common_credit_log;
只是有的时候, 这个需要统计的值有可能是负值, 我们需要区分负值总和与正值总和, 来了解更清楚的情况, 这个时候就可以用到 IF 这个函数了
例如:
SELECT
SUM(IF(extcredits1 > 0, extcredits1, 0)) AS plus_e1,
SUM(IF(extcredits1 < 0, extcredits1, 0)) AS minus_e1 FROM
pre_common_credit_log;
SUM(IF(extcredits1 > 0, extcredits1, 0)) AS plus_e1,
SUM(IF(extcredits1 < 0, extcredits1, 0)) AS minus_e1 FROM
pre_common_credit_log;
IF(expr1,expr2,expr3)
如果 expr1 是TRUE (expr1 <> 0 and expr1 <> NULL),则 IF()的返回值为expr2; 否则返回值则为 expr3。IF() 的返回值为数字值或字符串值,具体情况视其所在语境而定。