暂无图片
MySQL 在字符串列创建索引的时候 只对字符串的前几个列进行索引 这个对等值查询 范围查询 影响大吗?
我来答
分享
暂无图片 匿名用户
MySQL 在字符串列创建索引的时候 只对字符串的前几个列进行索引 这个对等值查询 范围查询 影响大吗?

MySQL 在字符串列创建索引的时候 只对字符串的前几个列进行索引 这个对等值查询 范围查询 影响大吗?

我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
EricOmer
  • 尽量不要在查询条件中对字段进行函数处理,如使用LOWER()函数。
  • 对于需要进行模糊查询的字符串,建议使用全文索引。
  • 对于字符串长度过长的字段,建议使用前缀索引。
  • 对于特殊字符集的字符串,建议使用全文索引。

暂无图片 评论
暂无图片 有用 0
得一阳阳

你应该说的是对该字段的前几个字符创建索引吧,这是叫前缀索引。使用前缀索引能有效的减小索引文件的大小,让每个索引页可以保存更多的索引值,从而提高了索引查询的速度。你说对查询影响打吗,这一点跟普通二级索引一样还得看索引选择性,索引的选择性越高则查询效率越高,当某个字段内容的前几位区分度很高的时候,这个时候采用前缀索引,可以在查询性能和空间存储方面达到一个很高的性价比。

暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏