我使用INSERT
所有SELECTED
数据到新表,但我添加了额外的字段IDS_EXIST
,并确定每个数据是否有其ID NOT NULL
生成{{1但是如果其中一个转向INSERT 'Y'
,我会NULL
是否可以在select语句中使用if这样的条件?
INSERT 'N'
因为我知道IF条件可以像这样使用
SELECT IF(C.ID != NULL AND C.UID != NULL AND C.SID != NULL,'Y','N'),
C.NAME,
C.ADDRESS,
C.DATE
FROM CLAIMS C
我多次反转我的查询但仍然在查询中出现语法错误
答案 0 :(得分:2)
是的,只要您使用IS NOT NULL
(working with NULL
values),它就会有效。
您无法使用
=
,<
或<>
等算术比较运算符来测试NULL
。
SELECT IF(1 != 2 AND 1 != NULL,'Y','N')
返回N
SELECT IF(1 != 2 AND 1 IS NOT NULL,'Y','N')
返回Y
答案 1 :(得分:1)
与不 NULL
比较时,请使用IS NOT NULL
SELECT IF(C.ID IS NOT NULL AND C.UID IS NOT NULL AND C.SID IS NOT NULL,'Y','N'),
C.NAME,
C.ADDRESS,
C.DATE
FROM CLAIMS C
答案 2 :(得分:0)
您可以尝试
选择c.ID为空且c.UID不为空且C.SID不为空的情况,然后'Y',否则'N'结束