在 MySQL 中,CARDINALITY
值是一個估計值,用于表示索引中不同值的數量
使用 ANALYZE TABLE
語句更新統計信息:
ANALYZE TABLE your_table_name;
這將更新表的統計信息,包括 CARDINALITY
值。
查詢 information_schema.STATISTICS
表以獲取 CARDINALITY
值:
SELECT TABLE_NAME, INDEX_NAME, CARDINALITY
FROM information_schema.STATISTICS
WHERE TABLE_SCHEMA = 'your_database_name' AND TABLE_NAME = 'your_table_name';
請將 'your_database_name'
和 'your_table_name'
替換為實際的數據庫和表名。此查詢將返回表的所有索引及其對應的 CARDINALITY
值。
請注意,CARDINALITY
值可能不是精確的,因為它們是基于統計信息的估計值。在某些情況下,例如表中的數據發生了顯著變化,但未運行 ANALYZE TABLE
語句更新統計信息時,這些估計值可能會過時。因此,在進行性能調優或制定查詢策略時,請務必確保 CARDINALITY
值是最新的。