gpt4 book ai didi

mysql - 获取列 MySQL 中至少为空值之一的行数据

转载 作者:行者123 更新时间:2023-11-29 04:33:31 25 4
gpt4 key购买 nike

我有一个看起来像这样的表(我的表中实际上会有更多的列)。

CREATE TABLE mytable(
ID int PRIMARY KEY,
Name varchar(50),
teamName varchar(255),
Create_Date DATETIME
);

这里是一些示例数据

INSERT INTO mytable VALUES (1,NULL,'TEST1','2017-01-02');
INSERT INTO mytable VALUES (2,NULL,'TEST2',NULL);
INSERT INTO mytable VALUES (3,'KK','TEST3','2017-01-02');
INSERT INTO mytable VALUES (4,NULL,NULL,NULL);

我想获取列中至少有一个为空的行。

这个我试过了。我得到了预期的结果。

SELECT * 
FROM mytable
WHERE Name IS NULL OR teamName IS NULL OR Create_Date IS NULL

期待结果

| ID |   Name | teamName |          Create_Date |
|----|--------|----------|----------------------|
| 1 | (null) | TEST1 | 2017-01-02T00:00:00Z |
| 2 | (null) | TEST2 | (null) |
| 4 | (null) | (null) | (null) |

但是不知道有没有更简单的方法可以实现这个效果。

我尝试将 IN 与 IS NULL 一起使用,但没有成功。

SELECT * 
FROM mytable
WHERE IS NULL IN (Name,Create_Date,teamName)

这是示例数据 http://sqlfiddle.com/#!9/3b678d/1

最佳答案

直接使用IS NULL检查三列中的任何一列是否为NULL:

SELECT *
FROM mytable
WHERE Name IS NULL OR Create_Date IS NULL OR teamName IS NULL;

关于mysql - 获取列 MySQL 中至少为空值之一的行数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51797840/

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