mysql-联接查询-驱动表

联接查询-驱动表

1.概念

驱动表,即需要从驱动表中拿出来每条记录,去与被驱动表的所有记录进行匹配探测。驱动表,作为外层循环
被驱动表,即里层循环,由于需要不断的拿外层循环传进来的每条记录去匹配,所以是随机读取的,走索引查询会大大提高速度。

2.判断驱动表与被驱动表

最有效确定驱动表的方式-EXPLAIN

 EXPLAIN select *   from   dept_emp as d inner join salaries  as s  on s.to_date=d.to_date;
+----+-------------+-------+------------+------+---------------+-------------+---------+----------------+------+----------+-------+
| id | select_type | table | partitions | type | possible_keys | key         | key_len | ref            | rows | filtered | Extra |
+----+-------------+-------+------------+------+---------------+-------------+---------+----------------+------+----------+-------+
|  1 | SIMPLE      | d     | NULL       | ALL  | NULL          | NULL        | NULL    | NULL           |  110 |   100.00 | NULL  |
|  1 | SIMPLE      | s     | NULL       | ref  | to_date_ids   | to_date_ids | 3       | test.d.to_date |   33 |   100.00 | NULL  |
+----+-------------+-------+------------+------+---------------+-------------+---------+----------------+------+----------+-------+

使用 EXPLAIN 分析后,在上面的表就是驱动表,下面的表就是被驱动表</

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值