gpt4 book ai didi

mysql - 在 MySQL 中使用 NULL-able 字段的性能影响

转载 作者:行者123 更新时间:2023-11-30 23:39:30 28 4
gpt4 key购买 nike

有时可以在不求助于 NULL-able 列的情况下表示不存在的值(不损失功能),例如:

  • 引用另一个表的 AUTO_INCREMENT 行 ID 的列中的零整数
  • 无效的日期值 (0000-00-00)
  • 零时间戳值
  • 空字符串

另一方面,根据 Ted Codd 的关系模型,NULL 是缺少数据的标记。我总是感觉以“正确的方式”做事更好,而且 MySQL 支持它和相关的 3 值逻辑,所以为什么不呢?

几年前,我正在研究一个性能问题,发现只需在列定义中添加 NOT NULL 即可解决该问题。该列已编入索引,但我不记得其他细节。从那时起,如果有其他选择,我就避免使用可空列。

但一直困扰着我的是,我没有正确理解在 MySQL 表中允许 NULL 对性能的影响。有人可以帮忙吗?

最佳答案

它每列节省 1 位。 http://dev.mysql.com/doc/refman/5.0/en/data-size.html看起来不多,但在数百万行中它开始产生影响

关于mysql - 在 MySQL 中使用 NULL-able 字段的性能影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4670314/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com