mysql cardinality

本文探讨了MySQL中类似于SQL Server的列统计信息,重点介绍了如何通过show index命令查看索引唯一值,以及InnoDB和MyISAM如何利用analyze table命令更新这些值。对比SQL Server,MySQL在索引统计信息的管理和调控上显得不那么透明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一直以为mysql没有类似sql server那样的列统计信息数据,今天算是被我翻到了。在show index 命令里面,

 

这个值表示索引的唯一值有多少,图示表示此索引有14w的索引唯一值,也就是说选择性还行,比较合适建索引。

不过这个值的管理不是很透明,inno和myisam都是通过 analyze table 命令来更新此值。

但是这个在sql server下面,可以使用各种手段来调控该值。sample取样,百分比,统计,都可以。

一般的mysql运维DBA一般都会比较关注这个值吧,会定期 analyze table 来更新这个值。

这个值的准确与否和sql server一样,会关系到查询优化器是否选择这个索引来join,或者using。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值