TOP

SQL NULL 值

NULL 的值是多少?

值为 NULL 的字段是没有值的字段。

如果表中的某个字段是可选的,您可以插入新记录或更新记录,而无需向该字段添加值。 然后该字段将以值 NULL 保存。


NULL 值不同于空值或包含空格的字段。值为 NULL 的字段是创建记录时留空的字段!

如何检查 NULL 值?

无法使用 =、< 或 <> 等比较运算符检查 NULL 的值。

相反,我们必须使用 IS NULL 和 IS NOT NULL 运算符。

IS NULL 语法

SELECT column_names
FROM table_name
WHERE column_name IS NULL

IS NOT NULL 语法

SELECT column_names
FROM table_name
WHERE column_name IS NOT NULL

演示数据库

以下是“Northwind”数据库的“Customers”表中的示例:

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.5021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.5023Mexico
4Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Sweden

SQL IS NULL 语句

IS NULL 运算符用于测试空值(NULL 值)。

以下 SQL 查询列出“Address”字段中值为 NULL 的所有客户:

Run SQLSELECT CustomerName, ContactName, Address 
FROM Customers 
WHERE Address IS NULL

IS NOT NULL 运算符

运算符 IS NOT NULL 用于检查非空值(NOT NULL 值)。

以下 SQL 查询列出了字段“Address”中具有值的所有客户:

Run SQLSELECT CustomerName, ContactName, Address 
FROM Customers 
WHERE Address IS NOT NULL