📅  最后修改于: 2023-12-03 15:20:17.525000             🧑  作者: Mango
在 SQL 中,空值(NULL)是一个特殊的值,表示该列或该行的值不存在或未知。空值不同于空字符串,空字符串表示字符串为空,而空值表示值未知。
在 SQL 中使用 NULL 表示空值,在 INSERT 或 UPDATE 语句中使用。
INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, NULL, ...);
UPDATE table_name SET column_name = NULL WHERE condition;
在 SQL 中查询空值需要使用 IS NULL 或 IS NOT NULL 运算符。
SELECT * FROM table_name WHERE column_name IS NULL;
SELECT * FROM table_name WHERE column_name IS NOT NULL;
在 SQL 中处理空值需要使用 COALESCE、IFNULL、NVL 等函数。
COALESCE 函数用于返回参数列表中第一个非空值。
SELECT COALESCE(column_name, "default_value") FROM table_name;
IFNULL 函数用于返回第一个非空的值。在 MySQL 中,IFNULL 等价于 COALESCE 函数。
SELECT IFNULL(column_name, "default_value") FROM table_name;
NVL 函数用于返回参数列表中第一个非空值。在 Oracle 中,NVL 等价于 COALESCE 函数。
SELECT NVL(column_name, "default_value") FROM table_name;
在 SQL 中,空值是一个特殊的值,表示该列或该行的值不存在或未知。在查询和处理空值时需要注意,如果有多个函数可以使用,需要根据实际情况选择合适的函数。