加入收藏 | 设为首页 | 会员中心 | 我要投稿 海南站长网 (https://www.0898zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

关于MySQL NULL值的处理

发布时间:2023-01-08 15:05:27 所属栏目:MsSql教程 来源:网络
导读: 面试:说说MySQL里边的NULL
从概念上看,MySQL对Null的定义是a missing unknown value,它与空字符串''并不是一回事。
面试:MySQL 中NULL和空值的区别?
NULL也就是在字段中存储NULL值,空

面试:说说MySQL里边的NULL

从概念上看,MySQL对Null的定义是a missing unknown value,它与空字符串''并不是一回事。

面试:MySQL 中NULL和空值的区别?

NULL也就是在字段中存储NULL值,空值也就是字段中存储空字符(’’)。

1、空值不占空间,NULL值占空间。当字段不为NULL时,也可以插入空值。

2、当使用 IS NOT NULL 或者 IS NULL 时,只能查出字段中没有不为NULL的或者为 NULL 的,不能查出空值。

3、判断NULL 用IS NULL 或者 is not null,SQL 语句函数中可以使用IFNULL()函数来进行处理mssql 空值,判断空字符用 =’‘或者’'来进行处理。

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

实际应用

必须把字段定义为 NOT NULL 并且提供默认值。为啥?

null,列使索引/索引统计/值比较都更加复杂,对 MySQL 来说更难优化;

null,MySQL内部需要进行特殊处理,增加数据库处理记录的复杂性;同等条件下,表中有较多空字段的时候,数据库的处理性能会降低很多;

null ,值需要更多的存储空,无论是表还是索引中每行中的 null 的列都需要额外的空间来标识;

对null的处理时候,只能采用isnull或isnotnull,而不能采用=、in、

(编辑:海南站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章