mysql 查询优化记录

2019-07-25  本文已影响0人  answer6

  1. 索引失效



这个时候该字段类型为 int,
sql1:EXPLAIN SELECT * FROM wp_xk_product_info WHERE menu_order = '1000'

我是执行分析

sql2: EXPLAIN SELECT * FROM wp_xk_product_info WHERE menu_order = 1000

我是执行分析2

上面的 sql 看出,当字段类型为 int 的时候,不管过滤条件是 int 还是 string,都不会对索引造成影响。



测试字段
测试字段类型现在为 varchar
sql1: EXPLAIN SELECT * FROM wp_xk_product_info WHERE menu_order = 1000
执行结果
sql2:EXPLAIN SELECT * FROM wp_xk_product_info WHERE menu_order = '1000'
执行结果2

对比看出,当字段类型为 int 的时候,查询条件为 int or string 都能用到索引;但是当字段类型为 varchar 的时候,只有过滤条件为 varchar 的时候才能用到索引。

上一篇 下一篇

猜你喜欢

热点阅读