gpt4 book ai didi

mysql - 两个sql查询之间的区别(使用join和不使用join)

转载 作者:行者123 更新时间:2023-11-29 07:54:05 25 4
gpt4 key购买 nike

我有两组 sql 查询。两者都为我提供了所需的结果,但我不确定哪一种有效以及如何有效。请问有人可以给我解释一下吗?

查询 1:

SELECT 
od.id, od.order_id, c.firstname, od.category, od.quantity,
od.price, o.order_date, u.username
FROM
orders o inner join order_detail od on o.id=od.order_id
join customer c on c.customerid = o.customer_id
join users u on u.userid = o.issued_by;

查询 2:

 SELECT 
od.id, od.order_id, c.firstname, od.category, od.quantity,
od.price, o.order_date, u.username
FROM
order_detail od, customer c, orders o,
users u WHERE o.id = od.order_id
AND o.customer_id = c.customerid
AND u.userid = o.issued_by;

最佳答案

第一个查询是具有适当语法的更好查询。第二个查询是“老派”版本,不应使用。

在性能方面,两个查询之间存在重要差异,第一个查询将在 joinure 子句期间直接过滤结果。第二个查询将在对数据应用 WHERE 子句之前获取整个数据。

不要犹豫,毫无疑问选择第一个版本。

希望这对您有帮助。

关于mysql - 两个sql查询之间的区别(使用join和不使用join),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25616473/

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