MySQL 判断是否为空

MySQL 判断是否为空

MySQL 判断是否为空

在数据库管理系统中,经常需要判断字段值是否为空。在 MySQL 中,我们可以使用 IS NULLIS NOT NULL 来判断字段是否为空。

IS NULL

IS NULL 用于判断字段值是否为空。如果字段值为空,返回 TRUE;如果字段值不为空,返回 FALSE

使用语法

SELECT column_name
FROM table_name
WHERE column_name IS NULL;

在上面的语法中,column_name 是要判断是否为空的字段名,table_name 是字段所在的表名。

示例

假设有一个名为 customers 的表,其中包含 idname 两个字段,现在我们需要查询名字为空的记录。可以使用以下 SQL 语句:

SELECT id, name
FROM customers
WHERE name IS NULL;

运行结果

id name
1 NULL
3 NULL

以上结果表示 customers 表中第一行和第三行的 name 字段值为空。

IS NOT NULL

IS NOT NULLIS NULL 相反,用于判断字段值是否不为空。如果字段值不为空,返回 TRUE;如果字段值为空,返回 FALSE

使用语法

SELECT column_name
FROM table_name
WHERE column_name IS NOT NULL;

在上面的语法中,column_name 是要判断是否不为空的字段名,table_name 是字段所在的表名。

示例

假设有一个名为 products 的表,其中包含 iddescription 两个字段,现在我们需要查询描述不为空的记录。可以使用以下 SQL 语句:

SELECT id, description
FROM products
WHERE description IS NOT NULL;

运行结果

id description
2 Great product
4 Best seller
5 Limited stock

以上结果表示 products 表中 description 字段值不为空的记录。

综合示例

为了更好地理解 IS NULLIS NOT NULL 的用法,我们来看一个综合示例。

假设有一个名为 orders 的表,其中包含 idorder_datecustomer_id 三个字段。现在我们需要查询订单日期为空或者不为空的记录。

查询订单日期为空的记录

SELECT id, order_date
FROM orders
WHERE order_date IS NULL;

运行结果

id order_date
1 NULL
3 NULL

以上结果表示 orders 表中订单日期为空的记录。

查询订单日期不为空的记录

SELECT id, order_date
FROM orders
WHERE order_date IS NOT NULL;

运行结果

id order_date
2 2021-08-15
4 2021-08-20
5 2021-09-05

以上结果表示 orders 表中订单日期不为空的记录。

总结

通过本文的介绍,我们学习了如何在 MySQL 中使用 IS NULLIS NOT NULL 来判断字段值是否为空。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程