在 PostgreSQL 中,NULL 用于表示一个缺失值或未知值。当某个列没有值时,该列将包含 NULL。NULL 不等于任何其他值,甚至不等于它本身。在 SQL 中,可以使用 IS NULL 或 IS NOT NULL 来检查列是否包含 NULL。

以下是一些关于 NULL 的示例:

1. 插入 NULL 值:
   
   -- 创建一个示例表
   CREATE TABLE example (
       id serial PRIMARY KEY,
       name VARCHAR (100),
       age INTEGER
   );

   -- 插入包含 NULL 值的行
   INSERT INTO example (name, age) VALUES ('John', 25);
   INSERT INTO example (name, age) VALUES ('Alice', NULL);

2. 查询包含 NULL 的行:
   -- 查询包含 NULL 值的行
   SELECT * FROM example WHERE age IS NULL;

3. 查询不包含 NULL 的行:
   -- 查询不包含 NULL 值的行
   SELECT * FROM example WHERE age IS NOT NULL;

4. 使用 COALESCE 函数处理 NULL:
   -- 使用 COALESCE 函数将 NULL 替换为默认值
   SELECT name, COALESCE(age, 0) AS age FROM example;

在处理 NULL 时,需要小心,因为它可能导致不可预测的结果。在查询中,确保考虑到可能包含 NULL 值的列,并使用适当的条件来处理这些情况。


转载请注明出处:http://www.zyzy.cn/article/detail/14143/PostgreSQL