开发者社区> 问答> 正文

在varchar字段上建立索引时,要注意什么?

在varchar字段上建立索引时,要注意什么?

展开
收起
不语奈何 2021-03-08 21:47:55 4469 0
3 条回答
写回答
取消 提交回答
  • Java程序员

    阿里巴巴开发规范【强制】在varchar字段上建立索引时,必须指定索引长度,没必要对全字段建立索引,根据实际文本区分度决定索引长度即可。

    说明:索引的长度与区分度是一对矛盾体,一般对字符串类型数据,长度为20的索引,区分度会高达90%以上,可以使用count(distinct left(列名, 索引长度))/count(*)的区分度来确定。

    2021-03-09 17:58:10
    赞同 展开评论 打赏
  • 精于基础,广于工具,熟于业务。

    在 varchar 字段上建立索引时,必须指定索引长度,没必要对全字段建立索引,根据实际文本区分度决定索引长度。

    2021-03-09 10:53:38
    赞同 展开评论 打赏
  • 技术源于生活

    索引长度, 一般一个大的varchar,没啥区分度的话,不太建议设置索引。例如varchar(32), 设置长度10,还是20,可能区分度都是一样的,那么由于一个复合索引是有长度限制的,那么对varchar(32)设置索引长度10,那么可以多设置索引长度在其他复合索引上

    2021-03-09 11:07:04
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载

相关实验场景

更多