RSS
菜单

MySQL 中 NULL 和空字符串的区别?

NULL:表示未知/不存在,不占存储逻辑值,参与运算结果多为 NULL(NULL + 1 = NULL),比较用 IS NULL/IS NOT NULL,不能用 =;空字符串 ':表示长度 0 的已知值,可参与普通运算和 = 比较。影响:① 索引:NULL 可入索引(InnoDB),但 IS NULL 可能不走索引;② 统计:COUNT(列) 不统计 NULL,COUNT(*) 统计;③ 排序:NULL 默认排最前;④ 唯一约束:NULL 可重复(唯一索引允许多个 NULL)。设计建议:能用 NOT NULL + 默认值尽量不用 NULL(优化、省空间、少坑)。

下载推广海报

圈内讨论推广海报

《MySQL 中 NULL 和空字符串的区别?》完整推广海报
一起交流

全部回复 0

分享经验,让问题更进一步

讨论,从你的观点开始

还没有回复,欢迎补充经验或分享不同的思路。