为什么SQL语句明明是同样的方法思路,怎么查询速度两个只要两秒,另一个要1分钟

image.pngimage.pngimage.png

yzm770360 发布于 2021-7-9 09:34
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
祈LLv6中级互助
发布于2021-7-9 09:38

哪里一样了,你这样写inner join就相当于left join,一个大表一个小表,肯定小表left join起来快

  • yzm770360 yzm770360(提问者) 嗯,这我知道,小表left join这个我试过,确实快了很多,但是当用where查询某个字段的时候还是特别慢,奇怪的是某个字段慢某个字段快的,也不知道为什么会这样子,之前都是可以的,我多建了两个视图就不行了。
    2021-07-09 09:43 
  • 祈L 祈L 回复 yzm770360(提问者) where查询是有索引的列优先,都有索引的看查询出来的数据量,少的优先
    2021-07-09 09:48 
  • yzm770360 yzm770360(提问者) 回复 祈L 好的
    2021-07-09 09:51 
  • yzm770360 yzm770360(提问者) 回复 祈L 话是这样子,也是真的奇怪,一些字段我用的like都是能秒查出来的,其他某些字段倒没这么快,因为有些为了作限制条件不可避免就用到了
    2021-07-09 09:55 
  • 祈L 祈L 回复 yzm770360(提问者) 如果你的like是like \'123%\'这种就很快,但是如果是like \'%123\'这种就会慢了
    2021-07-09 09:58 
最佳回答
0
烟尘Lv6高级互助
发布于2021-7-9 09:37

not like ,or ,union all ,效率低的查询都用上了

  • yzm770360 yzm770360(提问者) 话是这样子,就是不知道用什么来代替,之前用这些不慢的,被我弄着弄着弄慢了。。
    2021-07-09 09:44 
  • 3关注人数
  • 265浏览人数
  • 最后回答于:2021-7-9 09:38
    请选择关闭问题的原因
    确定 取消
    返回顶部