-1

我的 MYSQL 数据库是这样的,

id field_1 field_2 field_3 field_4 - - - - - - - - - field_120
1 hello hi null 再次 null              
2 stack bad good null null
" 再见 null null null null

这张表是一般描述,

id 是自动递增的,所有字段都是相同的数据类型,我在这个表中有大约 1000 行,

我想验证所有客户都没有使用(NULL)的字段(field_1,field_2,....),

我尝试使用 NULLIF 语句,但没有成功,谁能帮忙,

4

1 回答 1

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,则在 中找到非 NULL 值field1
如果field_2_has_non_null大于 0,则在 中找到非 NULL 值field2

等等

于 2013-09-05T13:55:44.330 回答