NULL值

PostgreSQL NULL是用于表示缺少值的术语。表中的NULL值是一个字段中的值,显示为空白。 具有NULL值的字段是没有值的字段。要知道一个NULL值与零值或包含空格的字段不同是非常重要的。

创建表的时候 可以指明 列是否允许为空

CREATE TABLE COMPANY(
    ID INT PRIMARY KEY     NOT NULL,
    NAME           TEXT    NOT NULL,
    AGE            INT     NOT NULL,
    ADDRESS        CHAR(50),
    SALARY         REAL
);
Code language: PHP (php)

这里,NOT NULL表示该列应该始终接受给定数据类型的显式值。 有两列没有使用NOT NULL。 因此这意味着这些列可以为NULL。 具有NULL值的字段是在创建记录期间留空的字段。

查询的时候 我们可以使用IS NOT NULL 来进行过滤

SELECT  ID, NAME, AGE, ADDRESS, SALARY
        FROM COMPANY
        WHERE SALARY IS NOT NULL;
Code language: PHP (php)

如果想查询字段是NULL的记录,使用IS NULL

SELECT  ID, NAME, AGE, ADDRESS, SALARY
        FROM COMPANY
        WHERE SALARY IS NULL;
Code language: PHP (php)
  1. NULL不等于0,也不等于空字符串'',代表没有填入任何数据
  2. 判断NULL不能使用 = 或者 !=,必须用 IS NULL / IS NOT NULL
  3. NOT NULL 约束:新增、修改数据时,这个字段必须给值,不能是空。
  4. 在join、聚合计算时,NULL会有特殊行为,聚合函数会直接忽略NULL。
Previous:
Next:

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注