我需要计算一行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,因为两个这些字段包含我正在搜索的值。
答案 0 :(得分:1)
在数字上下文中使用时,MySQL有一种巧妙的方法可以将布尔值视为1或0(分别为true
和false
值)。所以你可以这样做:
SELECT (col1 = 0) + (col2 = 0) + (col3 = '') + (col4 = '')
FROM tabel
答案 1 :(得分:0)
WHERE 0 in (col1, col2)
OR '' in (col3, col4)