gpt4 book ai didi

mysql - inner join vs left join - 对于相同的结果,哪个更快?

转载 作者:行者123 更新时间:2023-11-30 23:55:30 33 4
gpt4 key购买 nike

如果 inner join 和 left join 都可以达到相同的结果,哪个更快,性能更好(尤其是在大数据上)?

内部连接:

SELECT *
FROM Table_A A
INNER JOIN Table_B B
ON A.PK_A = B.PK_B

左连接:

SELECT *
FROM Table_A A
LEFT JOIN Table_B B
ON A.PK_A = B.PK_B

WHERE A.PK_A = B.PK_B

表A:

PK_A    User
1 FOX
2 COP
3 TAXI
6 WASHINGTON
7 DELL
5 ARIZONA
4 LINCOLN
10 LUCENT

表_B:

PK_B    Message
1 TROT
2 CAR
3 CAB
6 MONUMENT
7 PC
8 MICROSOFT
9 APPLE
11 SCOTCH

有什么想法吗?如何在大数据上测试它们的性能?

最佳答案

通过添加 WHERE A.PK_A = B.PK_B 查询优化器足够聪明,可以理解您需要 inner join 并改用它。因此它们将具有相同的性能,因为将创建相同的执行计划。

enter image description here所以永远不要在键上使用left joinwhere,当你想要一个inner join时,它只会是令人沮丧的维护和理解。

关于mysql - inner join vs left join - 对于相同的结果,哪个更快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42298075/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com