GaussDB null的用法

1 null的定义

null 空值代表丢失的未知数据。

默认情况下,表列可以保存 null 值。

本章解释 is null 和 is not null 操作符。

2 null值的赘述

如果表中的列是可选的,那么我们可以插入一个新记录或更新一个现有记录,而无

需向列添加一个值。这意味着该字段将存储为 null 。

null值的处理与其他值不同。null为未知不适当值 的占位符。
注:

无法比较 null 和 0 ;它们是不等价的。

请看下面的"customers" 表:

复制代码
csdn=> select * from customers;
 id |  name  |     addr     |  city  |  zip   | province
----+--------+--------------+--------+--------+----------
  1 | 张三   | 北京路27号   | 上海   | 200000 | 上海市
  2 | 李四   | 南京路12号   | 杭州   | 310000 | 浙江市
  3 | 王五   | 花城大道17号 | 广州   | 510000 | 广东省
  4 | 马六   | 江夏路19号   | 武汉   | 430000 | 湖北省
  5 | 赵七   | 西二旗12号   | 北京   | 100000 | 北京市
  6 | 鲁智深 | 丁家镇23号   | 韵含路 | 504320 | 广东省
  7 | 老三   |              |        |        | 广东省
  8 | 老六   |              |        |        | 广东省
(8 rows)

csdn=>

如果"customers" 表 地址、城市或邮编 一栏是可选的。这意味着,如果在地址列中插入一个没有值的记录,则地址列将用null值保存。

那么如何测试null的值呢?不能使用比较操作符测试null 值,例如= 、> 或 <>。

我们必须使用is null 和 is not null 操作符。

3 is null

我们如何才能选择地址 列中有 NULL 值的记录?我们必须使用is null 操作符:

复制代码
select * from customers where addr is null;

结果:

**提示:**总是使用 is null 来查找 null 值。

4 is not null

我们如何才能选择地址 列中没有 null 值的记录?我们必须使用 is not null 操作符:

复制代码
select * from customers where addr is not null;

结果:

5 批注

null值在建表的时候就可以默认分配,在查询过程中不能使用比较操作符来进行筛选或查找,只能使用is null和is not null,否则就会报语法错误。

相关推荐
new code Boy17 小时前
escape谨慎使用
前端·javascript·vue.js
叠叠乐17 小时前
robot_state_publisher 参数
java·前端·算法
Kiri霧17 小时前
Range循环和切片
前端·后端·学习·golang
过期动态17 小时前
JDBC高级篇:优化、封装与事务全流程指南
android·java·开发语言·数据库·python·mysql
WizLC17 小时前
【Java】各种IO流知识详解
java·开发语言·后端·spring·intellij idea
Mr.朱鹏17 小时前
SQL深度分页问题案例实战
java·数据库·spring boot·sql·spring·spring cloud·kafka
小张快跑。17 小时前
【Java企业级开发】(十一)企业级Web应用程序Servlet框架的使用(上)
java·前端·servlet
星星不打輰17 小时前
SSM项目--SweetHouse 甜蜜蛋糕屋
java·spring·mybatis·ssm·springmvc
Knight_AL17 小时前
Java 线程池预热(Warm-up)实战:开启与不开启到底差多少?
java·开发语言
爬山算法17 小时前
Netty(15)Netty的线程模型是什么?它有哪些线程池类型?
java·后端