MySQL NULL值特性

栏目: 数据库 · 发布时间: 7年前

NULL是一种“没有类型”的值,通常表示“无值”,“未知值”,“缺失值”,“超界”,“不在其中”等,我们在日常运用中很容易和NULL字符串混淆,这里大致整理了下NULL值的一些特性,以便能够正确使用NULL值。

1,创建表时字段时若未添加默认值,则默认为NULL值

MySQL NULL值特性

MySQL NULL值特性

2,NULL值和NULL字符串的区别

1)NULL值不区分大小写,查询时都显示为大写NULL,而NULL字符串则显示为插入时候的大小写,查询的时候根据字符集是否区分大小写筛选,或者通过语句级的collate或binary指定是否区分大小写。

2)NULL字符串可以当作普通字符串进行处理,而NULL值的判断只有is null和 is not null,见第5点

MySQL NULL值特性

MySQL NULL值特性

3,插入数据时若不指定值,如果没其它默认值,会用默认值NULL

MySQL NULL值特性

4,当插入大写NULL字符时,就很难区别NULL是NULL值还是NULL字符串了,这时需要用到NULL值的判断,NULL值的判断只有is NULL和is not NULL

MySQL NULL值特性

通过肉眼很难区别,这里通过NULL值的判断,可以看到id2为NULL值的只有3行,非NULL值的有7行,而为NULL字符串的有4行

MySQL NULL值特性

5,SQL里面对NULL值的处理函数有isnull(expr)(返回is NULL的逻辑判断结果) 和ifnull(expr1,expr2) (如果expr1 is null则返回expr2,否则返回expr1)

MySQL NULL值特性

6,和NULL值的比较运算和算术运算,结果仍为NULL值,但是<=>运算符时,NULL<=>NULL为真

MySQL NULL值特性

MySQL NULL值特性

MySQL NULL值特性

7,和NULL值的逻辑运算,is NULL运算只有null is null为真返回数字1,is not NULL运算只有 null is not null为假返回数字0

MySQL NULL值特性

8,mysql会把单独的\N(区分大小写)当作NULL值

MySQL NULL值特性

9,NULL值和空字符’’不一样,查询字段为空字符时,可以用等号,不考虑长度,都显示为空,但是长度不一样

MySQL NULL值特性

MySQL NULL值特性

MySQL NULL值特性

MySQL NULL值特性

MySQL NULL值特性

10,空字符和其他字符做算术运算时当作0处理,但是当做分母时运算结果为NULL

MySQL NULL值特性

11,NULL值会被count(字段)函数过滤,但是在count(*)中不会被过滤

MySQL NULL值特性

MySQL NULL值特性

MySQL NULL值特性

12,在group by函数中NULL会当作同一个值放在最最小值前

MySQL NULL值特性

13,其他一些函数中如果有NULL值,返回结果为NULL,如:

MySQL NULL值特性

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址: https://www.linuxidc.com/Linux/2018-12/156003.htm


以上所述就是小编给大家介绍的《MySQL NULL值特性》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

读屏时代

读屏时代

(美)Naomi S. Baron(内奥米·S.巴伦) / 庞洋 / 电子工业出版社 / 2016-7 / 55.00

书中作者探讨了技术如何重塑人们对阅读的定义。数字阅读越来越受欢迎,更便利、节约成本、并把免费书籍提供给全世界的读者。但是,作者也指出其弊处在于读者很容易被设备上的其他诱惑分心、经常走马观花而非深入阅读。更重要的是,人们阅读方式的变化会影响了作者的写作方式。为了迎合人们阅读习惯的转变,许多作家和出版商的作品越来越短小和碎片化,或者更青睐无需思考和细读的作品。作者比较了纸质阅读和在线阅读的重要性,包括......一起来看看 《读屏时代》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

在线进制转换器
在线进制转换器

各进制数互转换器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试