如何计算非空列数?mysql
我有这张桌子:如何计算非空列数?mysql,mysql,sql,Mysql,Sql,我有这张桌子: id col1 col2 col3 1 '' '' bla 2 '' bla bla 3 bla '' '' 我想构建一个查询,该查询将返回每个id有多少列不是空的 因此,结果将是: id sum 1 1 2 2 3 1 怎么做 select id, ((col1 != '') + (col2 != '') + (col3 != '')) as non_empty_count from tab
id col1 col2 col3
1 '' '' bla
2 '' bla bla
3 bla '' ''
我想构建一个查询,该查询将返回每个id有多少列不是空的
因此,结果将是:
id sum
1 1
2 2
3 1
怎么做
select id, ((col1 != '') + (col2 != '') + (col3 != '')) as non_empty_count
from table;
使用布尔值true=1和false=0的技巧-因此每列非空值ads 1计数。我喜欢这个答案,我不知道Mysql中的布尔值是0/1@54l3d是的,对于“和(是活跃的=1)作为活跃的计数”也很好