我的查询看起来像这样:
select *
from resident
where Resident_Sex is null or Resident_Date_Of_Birth is null or race_code is null.
并不总是只检查3列是否为空,它可能有更多。 我想知道是否有办法,而不是从这个表中选择*,选择让我们说出他遗失的常驻id和列名。
例如,它应该返回resident_id column_name
----------- ------------
aaaaaaa resident_sex
bbbbbbb resident_sex
bbbbbbb race_code
ccccccc resident_date_of_birth
而不是返回
resident_id resident_sex race_code Resident_date_of_birth
----------- ------------ ----------- -----------------------
aaaaaaa null 158 1995-02-18 00:00:00.000
bbbbbbb null null 1928-07-15 00:00:00.000
ccccccc F 12 null
显然表中有很多行和列,所以我不能做任何情况或if语句......
我希望自己清楚明白...... 提前谢谢你!
答案 0 :(得分:1)
您可以使用一系列NULL
操作对表格进行取消操作。然后只需选择包含SELECT resident_id, column_name
FROM (
SELECT resident_id, 'resident_sex' AS column_name
FROM mytable
WHERE resident_sex IS NULL
UNION ALL
SELECT resident_id, 'race_code'
FROM mytable
WHERE race_code IS NULL
UNION ALL
SELECT resident_id, 'Resident_date_of_birth'
FROM mytable
WHERE Resident_date_of_birth IS NULL) AS t
值列的每一行:
NSUserDefaults