如何在PostgreSQL表中选择属性不为NULL?

时间:2015-07-31 02:49:48

标签: postgresql null isnull

我有这个PostgreSQL表,测试:

 a | b | c | d 
---+---+---+---
 5 |   | 5 | 7
 5 | 6 |   |  
 1 | 2 | 3 |  

我想查询b值不为NULL的所有元组:

SELECT * FROM test WHERE b != NULL;
SELECT * FROM test WHERE b <> NULL;

这两个命令都没有返回记录:

 a | b | c | d 
---+---+---+---
(0 rows)

我应该使用什么命令来选择具有b值的所有元组?

1 个答案:

答案 0 :(得分:2)

IS NOT NULL

使用此命令:

SELECT * FROM test WHERE b IS NOT NULL;

结果是:

 a | b | c | d 
---+---+---+---
 5 | 6 |   |  
 1 | 2 | 3 |  
(2 rows)

标准SQL

谓词IS NULL和&amp; IS NOT NULL是标准SQL(Wikipedia)。因此,他们在Postgres以及其他合规数据库中工作。