我有一张这样的桌子
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
Run Code Online (Sandbox Code Playgroud)
我需要最后一列可以计算非零列的数量.结果应该是这样的
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
Run Code Online (Sandbox Code Playgroud)
谢谢
select *,
if(score_1<>0,1,0)+if(score_2<>0,1,0)+if(score_3<>0,1,0) as `count`
from table
Run Code Online (Sandbox Code Playgroud)
在需要时使用这样的选择而不是存储计算字段.