相关疑难解决方法(0)

MySQL中的NULL(性能和存储)

在MySQL中,null的性能和存储(空间)究竟是什么?

例如:

TINYINT:1字节TINYINT w/NULL 1字节+以某种方式存储NULL?

mysql sql null

69
推荐指数
3
解决办法
3万
查看次数

在数据库中过度使用可空列是"代码味道"吗?

我只是进入一个项目,它有一个相当大的数据库后端.我已经开始挖掘这个数据库了,95%的字段都可以为空.

这是数据库世界中的常规做法吗?我只是一个卑微的程序员,而不是DBA,但我认为你想要将可空字段保持在最低限度,只有在它们有意义的地方.

如果大多数列可以为空,它是否是"代码味道"?

sql

18
推荐指数
7
解决办法
4390
查看次数

具有70%空值的列的索引:使用null或空值?

我们目前正在优化一个MySQL表(InnoDB),它甚至会有超过1亿行.

在一列中,我们存储IP地址(VARCHAR 45).我们需要在此列上放置一个索引,因为我们必须能够检索每个特定IP地址的所有行.

但是,所有行的70%不会存储IP地址().

我们的问题:我们应该将这些空值存储为NULL,从而在此列上允许NULL(将为每一行添加1个字节).或者我们不应该允许NULL并将那些空值存储为''(空字符串)

什么是最佳表现?

我们永远不必搜索空(='')或空(IS NULL)的行,只搜索特定的IP地址(='123.456.789.123').

更新:在SO上确实有很多问题可以解决类似的问题.然而,一些答案似乎是矛盾的或说"它取决于".我们将运行一些测试并在此处针对我们的具体方案发布我们的发现.

mysql indexing performance null

11
推荐指数
1
解决办法
2694
查看次数

标签 统计

mysql ×2

null ×2

sql ×2

indexing ×1

performance ×1