mysql如何实现查询优化:小表驱动大表

 时间:2024-10-21 11:28:35

1、优化原则,小表驱动大小,即小的数据集驱动大的数据集。

mysql如何实现查询优化:小表驱动大表

2、select * from A where id in(select id from b),当B表的数据集必须小于A表的数据集时,用in优于exists.

mysql如何实现查询优化:小表驱动大表

3、select *from A where exists (select 1 from B where b.id=a.id)。当A表的数据集小于B表的数据集时,用exists优于in。注意:A表和B表的ID字段应建立索引。

mysql如何实现查询优化:小表驱动大表

4、exists(subquery)只返回true或false,因此子查询中的select * 也可以是select 1 或select 'x',官方说法是实际执行时会忽略掉select清单,因此没有区别。

mysql如何实现查询优化:小表驱动大表

5、exists子查询的实际执行过程可能经过优化而不是理解上的逐条对比,如果担忧效率问题,可进行实际建立以确定是否有效率问题。

mysql如何实现查询优化:小表驱动大表

6、exists子查询往往也可以用条件表达式,其他子查询或者join来替代,何种最优需要具体问题具体分析。

mysql如何实现查询优化:小表驱动大表
  • 如何给文件夹设置密码
  • 移动充值发票在哪里开
  • 手机充值怎么开发票
  • 中国移动怎么开发票
  • 中国移动电子发票抬头怎么改
  • 热门搜索
    xp屏幕亮度怎么调 路由器接路由器怎么设置 惠东旅游 龙门石窟在哪里 花果山在哪里 yy怎么申请短位id 北京晚上哪里好玩 怎么创建yy频道 得胜麦克风怎么样 0755是哪里的区号