我使用 INSERT
所有 SELECTED
数据到一个新表,但我添加了额外的字段 IDS_EXIST
并确定每个数据是否有它们的 ID NOT NULL
INSERT 'Y'
但如果其中一个变为 NULL
我将 INSERT 'N'
是否可以在 select 语句中使用这样的 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
因为我知道 IF 条件可以像这样使用
SELECT IF('condition','value if true','value if false')
我多次反转我的查询,但仍然在查询中遇到语法错误
最佳答案
是的,只要您使用 IS NOT NULL
就可以使用(working with NULL
values)。
You cannot use arithmetic comparison operators such as
=
,<
, or<>
to test forNULL
.
SELECT IF(1 != 2 AND 1 != NULL,'Y','N')
返回 N
SELECT IF(1 != 2 AND 1 IS NOT NULL,'Y','N')
返回 Y
关于mysql - 在 SELECT 语句中使用 "IF"检查是否存在另一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15375655/