扫码阅读
手机扫码阅读

前缀索引,中看也中用!

84 2024-11-05

我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。

查看原文:前缀索引,中看也中用!
文章来源:
江南一点雨
扫码关注公众号

文章摘要

1. 什么是前缀索引

前缀索引是指对文本字段前几个字符建立索引,以提高查询效率和节省索引空间。其选择性较完整字段索引降低,但仍能在性能与空间占用之间找到平衡。

2. 什么是索引选择性

索引选择性是指不重复索引值与数据表记录总数的比值,其值越高,查询效率越高。但选择性并非越高越好,需要根据实际情况求得平衡。适当长度的前缀索引可以接近完整列的基数,通过 SQL 计算全列与前缀选择性来确定最佳前缀长度。

3. 创建前缀索引

3.1 一个小案例

以 user_uuid 字段为例,实际应用中不需要完整字段建立索引,只需部分前缀即可。通过实验,确定前十个字符的前缀索引能唯一定位数据记录。

3.2 前缀索引

测试不同前缀长度的选择性,发现十个字符的前缀索引选择性为 1,能够唯一确定记录。通过 SQL 创建前缀索引后,查询时可利用该索引,但若索引选择性小于 1,则需回表操作。

3.3 一个问题

使用前缀索引后,无法使用覆盖索引,因为前缀索引中B+Tree不包含完整字段值,需要回表获取。

4. 小结

前缀索引适合根据项目实际需求使用,平衡查询效率与空间占用。

想要了解更多内容?

查看原文:前缀索引,中看也中用!
文章来源:
江南一点雨
扫码关注公众号