MySQL的三值逻辑
2024-10-20 09:21:24
MySQL 采用三值逻辑
SELECT 1 = 1;
SELECT 1 = 2;
SELECT 1 = NULL;
SELECT 1 != NULL;
上面四条语句的结果分别为:
可见MySQL采用三值逻辑,1
, 0
, NULL
影响
IN
语句
首先选择一个表t1
:
如果采用IN
语句,则正常运行。但如果采用NOT IN
语句,则结果为空集。
猜测与验证
IN
语句将值分别与集合中的元素进行判断并进行或运算OR
,而FALSE OR NULL
的结果为NULL
。
以下为验证结果:
与/或运算
非运算
异或运算
比较运算
IS
运算符
总结一下:
TRUE OR NULL
结果为TRUE
FALSE OR NULL
结果为NULL
TRUE AND NULL
结果为NULL
FALSE AND NULL
结果为FALSE
NOT NULL
结果为NULL
NULL XOR TRUE/FALSE/NULL
结果为NULL
NULL = NULL
结果为NULL
IS NULL
是唯一可以将NULL
转换为逻辑真假的运算符
最新文章
- css中各种情况下的元素的垂直和水平居中的问题
- IIS负载均衡的NLB解决方案
- How to install and configure Azure PowerShell
- [CareerCup] 2.2 Kth to Last Element of Linked List 链表的倒数第k个元素
- linux 下安装rsync
- right way check file open and end
- Silverlight技术调查(3)——国际化
- linux下写脚本时-gt是什么意思
- RESTful架构2--架构详解
- error: WatchKit App doesn't contain any WatchKit Extensions whose WKAppBundleIdentifier matches
- 【★】KMP算法完整教程
- shell if相关参数
- JVM GC知识回顾
- gradle配置国内镜像
- 调皮的程序员:Linux之父雕刻在Linux内核中的故事
- JavaScript -- 时光流逝(十):Screen 对象、History 对象、Location 对象
- ReentrantLock和condition源码浅析(一)
- 51 IP核查询
- twisted reactor执行流程
- 开发常见错误之 : IMP-00058: 遇到 ORACLE 错误 1691