MySQL中有关NULL的计算
2023-09-14 08:56:53 时间
mysql> select NULL=NULL; #判断两个NULL是否相等,结果不是1也不是0 +-----------+ | NULL=NULL | +-----------+ | NULL | +-----------+ 1 row in set (0.00 sec) mysql> select NULL<>NULL,NULL!=NULL; #判断两个NULL是否不相等,结果不是1也不是0 +------------+------------+ | NULL<>NULL | NULL!=NULL | +------------+------------+ | NULL | NULL | +------------+------------+ 1 row in set (0.00 sec) mysql> select NULL<=>NULL; #判断两个NULL是否相等 +-------------+ | NULL<=>NULL | +-------------+ | 1 | +-------------+ 1 row in set (0.00 sec) mysql> select NULL is NULL; #判断两个NULL是否相等 +--------------+ | NULL is NULL | +--------------+ | 1 | +--------------+ 1 row in set (0.00 sec) mysql> select NULL is NOT NULL; #判断两个NULL是否不相等 +------------------+ | NULL is NOT NULL | +------------------+ | 0 | +------------------+ mysql> select not NULL; #对NULL取非 +----------+ | not NULL | +----------+ | NULL | +----------+ 1 row in set (0.00 sec) mysql> select 1 and NULL, NULL and NULL; +------------+---------------+ | 1 and NULL | NULL and NULL | +------------+---------------+ | NULL | NULL | +------------+---------------+ 1 row in set (0.00 sec) mysql> select 1 or NULL, NULL or NULL,0 or NULL; +-----------+--------------+-----------+ | 1 or NULL | NULL or NULL | 0 or NULL | +-----------+--------------+-----------+ | 1 | NULL | NULL | +-----------+--------------+-----------+ 1 row in set (0.00 sec)
总结:
尽量使用 <=>、is null 、is not null 对NULL进行判断,否则得到的结果都是NULL;
NULL进行与和非运算时,结果都是null,然后NULL和一个值为true的值取或,结果为1,否则结果都为NULL;
上面的总结比较混乱,因为NULL可以理解为一个变量的值是未知的,他可能为true,可能为false(相对于bool值),那么在进行运算时,就要考虑两种情况,其中一种情况为false时,总的结果就是NULL。
相关文章
- MySQL求和:从零开始(mysqlsum求和)
- MySQL如何导入DBF文件(dbf文件mysql)
- MySQL:用非空值替换NULL(mysql空值替换)
- MySQL计算函数:让数据处理更简单(mysql计算函数)
- MySQL中创建函数的权限审查(mysql创建函数的权限)
- MySQL中处理时间的技巧:以秒为单位计算(mysql时间秒数)
- MySQL优化:实现高效的子查询(mysql优化子查询)
- 使用cmd命令查看MySQL数据库详细信息(cmd查看mysql)
- MySQL脚本处理,新手编程入门(mysql脚本编写)
- 如何快速连接MySQL数据库:简单步骤(mysql连接到数据库)
- 计算MySQL时间相差的天数(mysql时间相差的天数)
- MySQL数据库:全面介绍及使用指南(mysql大全)
- 阿里云MySQL远程连接技术实现:一步步操作指南(阿里云mysql远程连接)
- MySQL精准提取字段,快速把握数据概况(mysql选择字段)
- MySQL计算日期间隔(mysql中俩个日期相减)
- Mysql如何对null进行排序(mysql中null排序)
- MySQL中NULL值的使用方法(mysql 中null值)
- MySQL中如何计算52周(mysql中52周)
- 从库抽取MySQL从库BW的灵活运用(bw抽取mysql)
- MySQL 1111开启数据新世界的大门(1111 – mysql)
- 意外关闭MySQL别着急,这里有救(mysql不小心关闭了)
- MySQL计算时间差两日期相减得月份(mysql两时间相减得月)
- MySQL安装指南源码安装步骤详解(mysql下源码安装)
- MySQL字段设置为不允许NULL值的问题解决方案(mysql不能为null)
- MySQL不等于多个深入理解操作符的使用方法(mysql 不等于多个)