为什么日期时间列上的索引在MySQL中具有较低的基数?

时间:2012-10-30 23:39:27

标签: mysql datetime indexing cardinality

我有一张超过18M行的表格正在快速增长。

我在datetime列上创建了一个复合索引(数百万个唯一值),intColumn 1(具有大约40k个唯一值,intColumn 2(具有大约3k个唯一值)和intColumn 3(具有1k个唯一值)。

指数的基数最终是197年!

我真的对此感到困惑,并想知道我是否做错了什么或者是否有我遗漏的东西。这个指数似乎毫无用处。

1 个答案:

答案 0 :(得分:2)

尝试运行ANALYZE TABLE,然后检查基数。显示的基数只是估计值,可能不正确。

另外,看看here,它可能会有所帮助。