gpt4 book ai didi

mysql - 我可以在结果为 `IN (1,2,NULL)` 的 MySQL select 语句中使用 NULL 吗?

转载 作者:行者123 更新时间:2023-11-29 05:26:21 25 4
gpt4 key购买 nike

是否可以在像 SELECT * FROM my_table WHERE my_field IN (1,2,NULL); 这样的语句中包含一个 NULL

如果不是,您如何建议只允许几个整数或 NULL?

是否最好像这样使用OR:

SELECT *
FROM my_table
WHERE
my_field IN (1,2)
OR my_field IS NULL;

最佳答案

使用OR,它是你想要的最清晰的表达方式。

my_fieldNULL 时,您还可以提供一个默认值

SELECT *
FROM my_table
WHERE COALESCE(my_field, 1) IN (1,2);

但是在 IN 列表中使用 NULL 是行不通的,因为 NULL 通常不相等为 NULL。 (它也不是不相等的——它是未定义的)。

关于mysql - 我可以在结果为 `IN (1,2,NULL)` 的 MySQL select 语句中使用 NULL 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19846015/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com