首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >MySQL 8.0函数索引的三个边界:完全匹配、写入代价、LIKE通配符

MySQL 8.0函数索引的三个边界:完全匹配、写入代价、LIKE通配符

作者头像
这个DBA有点耶
发布于 2026-11-11 15:54:45
发布于 2026-11-11 15:54:45
150
举报
概述
WHERE DATE(create_time) = '2026-09-01'导致索引失效,是MySQL的经典痛点。8.0.13引入的函数索引,把计算下推到索引层,让这类查询也能走索引。但函数索引不是免费的午餐:查询表达式必须与索引定义“完全一致”,字符集和类型任何一处不匹配都会让它形同虚设;写入时每次都要计算函数值并维护索引,写密集场景的吞吐代价不可忽略。本文拆解函数索引的生效机制、三个失效边界

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • 一、函数索引的底层:不是“给函数建索引”,是把计算前移
  • 二、边界一:“完全一致”比想象中苛刻
  • 三、边界二:函数索引只解决“读”,代价在“写”
  • 四、边界三:函数索引不是“万能索引”
  • 五、小结
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档