2011-04-27 48 views
2

我有这样计数表中的非空或非零的列数

ID Name Score_1 Score_2 Score_3 
1 Abcd 4   5   5 
2 Bdc 8   7   0 
3 dcd 0   0   3 
4 cdded 0   0   0 

我到底需要另一列可算非零columns.Result的数量应该是这样的一个表这

ID Name Score_1 Score_2 Score_3 Count 
1 Abcd 4   5   5  3 
2 Bdc 8   7   0  2 
3 dcd 0   0   3  1 
4 cdded 0   0   0  0 

谢谢

回答

7
select *, 
if(score_1<>0,1,0)+if(score_2<>0,1,0)+if(score_3<>0,1,0) as `count` 
from table 

使用选择这样当你需要存储CALCULAT代替编辑字段。

+0

非常感谢您的工作完美 – Dhiraj 2011-04-27 01:17:58

+0

不客气。 :) – 2011-04-27 01:18:56