mySQL计算字段值的实例

时间:2018-02-01 22:01:10

标签: mysql

我有一个这样的数据库表:

id    slot1   slot2   slot3
---------------------------------
1     10      10      0
2     0       0       10
3     0       10      0

我需要一个SQL语句来查明整个表中有多少个'10'实例。所以对于上面,它给了我4作为答案。我不确定我能用什么方法......

是否有合理的方法,或者我必须提取所有记录WHERE slot1=10 OR slot2=10 OR slot3=10并在之后计算它们?

1 个答案:

答案 0 :(得分:2)

使用条件聚合的一种方法。

ibm-ejb-jar-bnd.xml

使用MySQL,条件可以简化为

select count(case when slot1=10 then 1 end) +
       count(case when slot2=10 then 1 end) + 
       count(case when slot3=10 then 1 end)
from tbl
where 10 in (slot1,slot2,slot3)

每个条件都会返回1或0,具体取决于真实性。