温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

SQL怎么查询空值字段

发布时间:2026-10-10 18:11:08 来源:亿速云 阅读:103 作者:小樊 栏目:编程语言

在 SQL 中,“空值”通常指的是 NULL,而不是空字符串 '' 或 0。查询空值字段要用 IS NULL,不能用 = NULL。


一、查询字段为 NULL 的数据

SELECT *
FROM 表名
WHERE 字段名 IS NULL;

✅ 正确
❌ 错误写法:

WHERE 字段名 = NULL   -- 永远不成立

二、查询字段不为 NULL 的数据

SELECT *
FROM 表名
WHERE 字段名 IS NOT NULL;

三、空字符串和 NULL 的区别

空字符串(不是 NULL)

SELECT *
FROM 表名
WHERE 字段名 = '';

同时查 NULL 和 空字符串

SELECT *
FROM 表名
WHERE 字段名 IS NULL
   OR 字段名 = '';

四、常见实战示例

1️⃣ 查询未填写手机号的用户

SELECT user_id, user_name
FROM user
WHERE phone IS NULL;

2️⃣ 查询已填写邮箱的用户

SELECT *
FROM user
WHERE email IS NOT NULL;

3️⃣ 把 NULL 显示成“未填写”

SELECT 
  user_name,
  IFNULL(phone, '未填写') AS phone
FROM user;

(MySQL 示例,其他数据库可用 COALESCE)


五、不同数据库的注意点

  • MySQL / SQL Server:IS NULL
  • Oracle:IS NULL
  • PostgreSQL:IS NULL
  • 所有标准 SQL 都一样 ✅

如果你有:

  • 具体数据库(MySQL / Oracle / SQL Server)
  • 表结构
  • 想查“空值 / 空字符串 / 0”哪种

可以贴出来,我帮你写精确 SQL。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手