MySQL Query返回字符串而不是数值

时间:2013-10-08 06:06:00

标签: mysql

如果faulttype ='business'且faultseverity ='fatal',我想将4与故障数相乘,使用下面列出的查询;

Select faulttype, IF (faulttype='business' AND faultseverity='fatal', 1,0)* 4 FROM tbl_fault WHERE product='DAS' AND faultdistribution='missed'
 group by faulttype

我的结果是商家而非数字值,此查询中应该更正哪些内容?

此致

2 个答案:

答案 0 :(得分:2)

试试这个

Select faulttype, sum(IF (faulttype='business' AND faultseverity='fatal', 1,0))*4 FROM tbl_fault WHERE product='DAS' AND faultdistribution='missed'
 group by faulttype;

For reference see the sql fiddle.

答案 1 :(得分:1)

试试这个

Select CASE faulttype WHEN faulttype='business' AND faultseverity='fatal' THEN 1*4 ELSE 0 END AS rez FROM tbl_fault WHERE product='DAS' AND faultdistribution='missed'