mysql里null指的是什么

小编给大家分享一下mysql里null指的是什么,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!

MysqL中null代表什么都没有,是尚未定义的值,占用空间,但不能参与任何计算,因为空值参与任何计算都为空。null使得索引、索引统计和值都更加复杂,并且影响优化器的判断。

MysqL中null确实很难缠,往往很多高手在sql优化时都被它坑过

  • MysqL中,null是未知的,且占用空间的。null使得索引、索引统计和值都更加复杂,并且影响优化器的判断。

  • 空值('')是不占用空间的,注意空值的''之间是没有空格。

  • 在进行count()统计某列的记录数的时候,如果采用的 NULL 值,会被系统自动忽略掉,但是空值是会进行统计到其中的。

  • 判断null使用is null或者is not null,但判断空字符使用  =''或者  <>''来进行处理。

  • 对于timestamp数据类型,如果插入 NULL 值,则出现的值是当前系统时间。插入空值,则会出现'0000-00-00 00:00:00'  。

  • 对于已经创建好的表,普通的列将 null修改为 not null带来的性能提升比较小,所以调优时没有必要特意一一查找并null修改 not null。

  • 对于已经创建好的表,如果计划在列上创建索引,那么尽量修改为not null,并且使用0 或者一个特殊值或者空值''。

总之,对于表通常情况也全都指定为not null,并指定 default ''或者其它认值,优势大于劣势。

看完了这篇文章,相信你对MysqL里null指的是什么有了一定的了解,想了解更多相关知识,欢迎关注编程之家行业资讯频道,感谢各位的阅读!

相关文章

MySQL 死锁 是指两个或多个事务互相等待对方持有的锁,从而导...
在MySQL中,InnoDB引擎通过Next-Key Locking技术来解决幻读问...
在数据库事务管理中,Undo Log 和 Redo Log 是两种关键日志,...
case when概述 sql语句中的case语句与高级语言中的switch语句...
其实很简单,只是为了忘记,做个记录,用的时候方便。 不管是...
1.进入服务,找到mysql服务,在属性里找到mysql的安装路径 2...