怎么计算一个表中多列的空值个数

比如我现在有105个字段,每个字段里面都有空值,请问什么样的SQL语句可以实现最后显示的结果是列名加空值个数,10个列的结果都要显示出来。

select count(ANCHEID) ,count(PRIPID),count(REGNO),count(BUSST),count(EMPNUMDIS),count(ENTTYPE)
from E_ANNREPORT_BASEINFO where ANCHEID is null or ANCHEID='!' or PRIPID is null or PRIPID='!' or REGNO is null or REGNO='!' or BUSST='' or BUSST='!' or EMPNUMDIS='' or EMPNUMDIS='!' or ENTTYPE='' or ENTTYPE='!'

select count (表名.列) from 表名 where 表名.列= (SELECT 表名.列 FROM 表名 where 表名.列名=null)

postgresql用SQL语句查询后只会显示最后一条结果,能改变吗

用 or 连接每个列明判断,如果列很多岂不是很麻烦

select count(*) from 表 where 是空

select
count(*) sum,
sum((case
when [crm_name] is null then 1
ELSE 0
end)) crm_name,
sum((case
when [crm_stage] is null then 1
ELSE 0
end)) crm_stage
from crm_schoolBase