mysql:不要在索引列进行数学运算和函数运算
2023-12-13 10:33:59
不要在索引列进行数学运算和函数运算。这是因为数学运算和函数运算会改变索引列的值,导致索引失效。
如果需要进行计算或函数处理,最好将数据取出并在应用程序中进行处理。
下面举个对照的例子:
1)看语句explain select * from test_table where type='re';的执行计划,其中没有在索引列上进行计算或函数处理:
从上面的输出可以看出,使用了索引。
2)再看语句explain select * from test_table where left(type, 2)='re';的执行计划,其中在索引列上进行了函数计算:
从上面输出可以看出,没有使用索引。
文章来源:https://blog.csdn.net/panghuangang/article/details/134964544
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!