我的MYSQL数据库是这样的,
id field_1 field_2 field_3 field_4 - - - - - - - - - field_120 1 hello hi null again null 2 stack bad good null null " bye null null null null
此表是一般说明,
id是自动递增,所有字段都是相同的数据类型,我在此表中有大约1000行,
我想验证所有客户未使用的字段(field_1,field_2,....),
我尝试使用NULLIF语句,但它没有成功,任何人都可以请求帮助,
答案 0 :(得分:0)
这是你的意思吗?
SELECT
SUM(IF(`field_1` IS NOT NULL, 1, 0)) as `field_1_has_non_null`,
SUM(IF(`field_2` IS NOT NULL, 1, 0)) as `field_2_has_non_null`,
SUM(IF(`field_3` IS NOT NULL, 1, 0)) as `field_3_has_non_null`,
...
SUM(IF(`field_118` IS NOT NULL, 1, 0)) as `field_118_has_non_null`,
SUM(IF(`field_119` IS NOT NULL, 1, 0)) as `field_119_has_non_null`,
SUM(IF(`field_120` IS NOT NULL, 1, 0)) as `field_120_has_non_null`,
FROM
`table`
如果field_1_has_non_null
大于0,则在field1
中找到非NULL值。
如果field_2_has_non_null
大于0,则在field2
中找到非NULL值。
等