假设三个表 t_user , t_user_detail , t_log_info  记录都比较多(5000~1000)。

 

select count(user_id),a.user_type from t_user a
inner join t_user_detail b on a.user_id=b.user_id
inner join t_log_info c on b.user_id=c.user_id

where a.user_type=100     

这样会比较慢。

 

一个小小的改进速度会快很多。 b.user_id 改成 a.user_id

select count(user_id),a.user_type from t_user a
inner join t_user_detail b on a.user_id=b.user_id
inner join t_log_info c on a.user_id=c.user_id

where a.user_type=100    

 

个人观点, 表关联时尽量用where过滤后记录比较少的表的字段关联。  

 

相关文章:

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