在大对数编程语言中,逻辑表达式的值只有两种:True,False。但是在关系型数据库中的逻辑表达式并非两种,而是三值逻辑的表达式(True、False、Unknown)。
select null = 1;
执行结果:
+----------+
| null = 1 |
+----------+
| NULL |
+----------+
1 row in set (0.01 sec)
select null = null;
执行结果:
+-------------+
| null = null |
+-------------+
| NULL |
+-------------+
1 row in set (0.00 sec)
出乎意料的是null = 1
返回的是null,而null = null
返回的也是null,而不是1。对于返回值是null的情况,应该将它视为unknown的情况,即表示未知。在不同的语句下unknown表示不同的值
unknown被视为False
group by会把null值分到一组
order by会把null值排列在一起
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有