Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mysql索引基数低,但数据多样_Mysql_Sql_Indexing_Cardinality - Fatal编程技术网

mysql索引基数低,但数据多样

mysql索引基数低,但数据多样,mysql,sql,indexing,cardinality,Mysql,Sql,Indexing,Cardinality,因此,我有一个列卡片上有索引的表 当我跑的时候 SELECT COUNT(DISTINCT(card)) FROM table 它返回490个不同的条目 但是当我跑的时候 SHOW INDEXES FROM s_edge_type_group_join; 它揭示了card列上索引卡的基数仅为1。该索引中只有该列 为什么会这样?为什么索引的基数不能反映数据的多样性?SHOW index返回的基数是一个估计值,主要由优化器用于构建查询执行计划: 基数 对索引中唯一值数量的估计。这是 通过运行A

因此,我有一个列卡片上有索引的表

当我跑的时候

SELECT COUNT(DISTINCT(card)) FROM table
它返回490个不同的条目

但是当我跑的时候

SHOW INDEXES FROM s_edge_type_group_join;
它揭示了
card
列上索引卡的基数仅为1。该索引中只有该列

为什么会这样?为什么索引的基数不能反映数据的多样性?

SHOW index返回的基数是一个估计值,主要由优化器用于构建查询执行计划:

基数

对索引中唯一值数量的估计。这是 通过运行ANALYZE TABLE或myisamchk-a更新。基数是 基于存储为整数的统计信息进行计数,因此该值不是 即使是小桌子也必须精确。基数越高, MySQL在进行连接时使用索引的可能性越大

根据填充表格的方式,这些值可能已过时。并且,为了解释文档,在这种情况下,您应该使用来更新这些统计信息。
SHOW INDEX
返回的基数是一个估计值,主要由优化器用于构建查询执行计划:

基数

对索引中唯一值数量的估计。这是 通过运行ANALYZE TABLE或myisamchk-a更新。基数是 基于存储为整数的统计信息进行计数,因此该值不是 即使是小桌子也必须精确。基数越高, MySQL在进行连接时使用索引的可能性越大

根据填充表格的方式,这些值可能已过时。为了解释文档,在这种情况下,您应该使用更新这些统计数据