首页 > 数据库 > 国内数据库 > YashanDB NULL
NULL表示为空值,YashanDB中将空字符串同样视作NULL处理,NULL并不作为确定的值使用,而表示该值处于未知状态或不具有意义。
仅支持在未定义为NOT NULL或PRIMARY KEY约束限制的列中使用NULL。
YashanDB对SQL内置函数中给定参数为NULL的处理结果请查阅 内置函数。
如需判断是否为NULL,请使用比较运算符
IS NULL进行判断,当操作数为NULL时,结果返回TRUE,否则返回FALSE。
NULL表示空值,即缺少数据,因此无法与其他值(包括NULL)进行比较,当使用
=
!= 等运算符进行比较时,结果会返回FALSE。
YashanDB中算数运算及位运算中所有NULL参与运算的结果均为NULL,部分比较运算、逻辑运算及连接运算的返回结果根据给定的操作数返回不同结果,详见下表:
| 运算 | 运算符 | NULL参与运算 |
|---|---|---|
| 算数运算 | + | 结果为NULL |
|
|
- | 结果为NULL |
|
|
* | 结果为NULL |
|
|
/ | 结果为NULL |
|
|
% | 结果为NULL |
| 比较运算 | = | 结果为FALSE |
|
|
!= 或 <> | 结果为FALSE |
|
|
> | 结果为FALSE |
|
|
>= | 结果为FALSE |
|
|
< | 结果为FALSE |
|
|
<= | 结果为FALSE |
|
|
[NOT] IN | IN:
* 左边数据为NULL:结果为FALSE * 右边集合包含NULL:如果集合中有非NULL值与左边数据相等,则结果为TRUE,否则为FALSE NOT IN: * 左边数据为NULL:结果为FALSE * 右边集合包含NULL:如果集合中含有NULL值,则返回FALSE;如果集合中不含NULL值,且所有数据与左边数据不相等,则结果为TRUE,否则为FALSE |
|
|
[NOT] LIKE | 结果为FALSE |
|
|
[NOT] BETWEEN AND | 结果为FALSE |
|
|
IS [NOT] NULL | IS NULL:
* 操作数为NULL:结果为TRUE * 操作数不为NULL:结果为FALSE IS NOT NULL: * 操作数为NULL:结果为FALSE * 操作数不为NULL:结果为TRUE |
| 逻辑运算 | AND | 结果为NULL |
|
|
OR | * TRUE OR NULL:结果为TRUE
* FALSE OR NULL:结果为NULL * NULL OR NULL:结果为NULL |
|
|
NOT | 结果为NULL |
| 连接运算 | || | 任何数据||NULL:结果为任何数据 |
| 位运算 | & | 结果为NULL |
|
|
| | 结果为NULL |
|
|
^ | 结果为NULL |
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70028812/viewspace-3079080/ ,如需转载,请注明出处,否则将追究法律责任。