为了计算我已经制定了这个查询的错误的权重,
Select id,faultdistribution, faulttype, faultseverity,
IF (faultdistribution='crs', COUNT(id) * 8, 0) +
IF (faultdistribution='configuration', COUNT(id) * 6, 0) +
IF (faulttype='bs' AND faultseverity='ft', COUNT(id) * 4, 0) +
IF (faulttype='bs' AND faultseverity='mj', COUNT(id) * 2, 0) +
IF (faulttype='bs' AND faultseverity='md', COUNT(id) * 5, 0) +
IF (faulttype='bs' AND faultseverity='mi', COUNT(id) * 3, 0) +
IF (faulttype='lf' AND faultseverity='ft', COUNT(id) * 2, 0) +
IF (faulttype='lf' AND faultseverity='mj', COUNT(id) * 1, 0)
FROM tbl_fault WHERE product='DAS' AND faultdistribution='missed'
我打算做的是;
如果故障分布='crs'则故障* 8 +如果故障分布='配置'则故障* 6 .........
因为,数据库中有记录,但我没有上述查询的结果,需要帮助/建议。
此致
答案 0 :(得分:1)
因为你在查询中使用了聚合函数COUNT,它只返回一行。但是你的查询是逐个运行所有行的,这是错误的。
COUNT()函数返回与指定条件匹配的行数。