select * from 驱动表 t1 STRAIGHT_JOIN 被驱动表  t2 ON t1.order_id = t2.order_id;

select * from t_order t1 STRAIGHT_JOIN t_order_detail  t2 ON t1.order_id = t2.order_id;

这样强制指定驱动表和被驱动表的好处是可以让mysql在计算SQL执行成本时按照自己的计划进行。也就是说如果你认为自己比MYSQL的SQL优化器更牛B,认为使用t1作为驱动表更好,这样就是执行成本更低。

 

rows_examined_per_scan: 321     表示从驱动表结果集预估有321条记录会对被驱动表进行扫描

rows_produced_per_join: 321     如果这两个数值一样,表示filter =100 即过滤100%的数据,但是如果这个值比上一个值少,则可能使用了覆盖索引等进行了优化,那么filter也会少于100%

filtered: 100

prefix_cost是总成本

 

end.

相关文章:

  • 2021-08-05
  • 2022-01-03
  • 2022-12-23
  • 2021-09-04
  • 2021-07-15
  • 2021-11-29
  • 2022-02-10
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-09-27
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2020-06-14
相关资源
相似解决方案