mysql中的NULL记录和空值有什么区别
发布网友
发布时间:2022-04-25 19:05
我来回答
共3个回答
热心网友
时间:2022-04-08 11:25
NULL是有值的,在MYSQL中有它自己的表示方法,而且在逻辑运算的时候,比如2
AND
NULL
结果为NULL
可是空值代表没有这项,运算的时候不考虑.
所以PHP读出来的时候是不一样的NULL不知道是什么数值(我忘记了),空串会显示没有这项(为空,要不就是会出错,我忘记了)`~
所以编程的时候自己要注意自己数据库里存了什么.记得的话,应该不再会遇到这种问题了.
热心网友
时间:2022-04-08 12:43
空值('')是不占用空间的
NULL值是未知的,且占用空间,不走索引,DBA建议建表的时候最好设置字段是NOT
NULL
来避免这种低效率的事情的发生。
注意:
count()统计某列的记录数的时候,如果采用的NULL值,会别系统自动忽略掉,但是空值是会进行统计到其中的。
对于timestamp数据类型,如果往这个数据类型插入的列插入NULL值,则出现的值是当前系统时间。插入空值,则会出现
'0000-00-00
00:00:00'
热心网友
时间:2022-04-08 14:17
转:
1:空值('')是不占用空间的
2:
mysql中的null其实是占用空间的
注意事项:
1:在进行count()统计某列的记录数的时候,如果采用的null值,会别系统自动忽略掉,但是空值是会进行统计到其中的。
2:
判断null
用is
null
或者
is
not
null,sql
语句函数中可以使用ifnull()函数来进行处理,判断空字符用
=''或者
<>''来进行处理
3:
对于mysql特殊的注意事项,对于timestamp数据类型,如果往这个数据类型插入的列插入null值,则出现的值是当前系统时间。插入空值,则会出现
'0000-00-00
00:00:00'
4:对于空值的判断到底是使用is
null
还是
=''要根据实际业务来进行区分