繁体   English   中英

在SQL中计算空字段或空字段

[英]Counting empty or null fields in SQL

我需要计算SELECT COUNT(*)语句中一行包含多少个空字段

我的行包含11个字段,我只需要数4个即可。 在两列中,我需要计数它们是否为空(NOT NULL),在两列中,我需要计数它们是否为0

到目前为止,我的陈述:

SELECT COUNT(*) AS subjectcount FROM Tabel WHERE (col1 OR col2) =0 OR (col3 OR col4) = '' AND id=1

可以这样说
col1 = 0
col2 = 1
col3 =''
col4 =“某物”
然后我的总和应该为2,因为其中两个字段保持值为im搜索。

当在数字上下文中使用MySQL时,MySQL具有一种将布尔值视为1或0(分别用于true值和false值)的巧妙方法。 因此,您可以执行以下操作:

SELECT (col1 = 0) + (col2 = 0) + (col3 = '') + (col4 = '')
FROM   tabel
WHERE 0 in (col1, col2)
  OR '' in (col3, col4)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM