MySQL 中NULL和空值的区别

 我来答
百度网友6956f15
2017-10-29 · TA获得超过281个赞
知道小有建树答主
回答量:205
采纳率:85%
帮助的人:128万
展开全部
NULL 是一种特别的类型。严格来说不属于任何类型。
空值不过是 某种类型(不包括NULL,NULL类型只有NULL)中的默认初始化的值。
如int类型,空值是0。varchar空值为''。bool是false。判断方式就是 = 字符串可用 like

而NULL会单独占用1个字节表示。其值就是NULL。判断方式就是用 is null 或者 is not null。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
蝈蝈VIP影视
2016-11-19 · TA获得超过319个赞
知道小有建树答主
回答量:373
采纳率:100%
帮助的人:166万
展开全部
空值('')是不占用空间的
NULL值是未知的,且占用空间,不走索引,DBA建议建表的时候最好设置字段是NOT NULL 来避免这种低效率的事情的发生。
注意:
count()统计某列的记录数的时候,如果采用的NULL值,会别系统自动忽略掉,但是空值是会进行统计到其中的。
对于timestamp数据类型,如果往这个数据类型插入的列插入NULL值,则出现的值是当前系统时间。插入空值,则会出现 '0000-00-00 00:00:00'
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式