gpt4 book ai didi

mysql - 如何让这个查询更加高效呢?

转载 作者:行者123 更新时间:2023-11-29 08:21:44 26 4
gpt4 key购买 nike

my previous question 的评论说“我建议也看看这里的答案:stackoverflow.com/questions/1313120/…。您接受的答案在技术上认为是正确的,但在实践中可能会变得非常低效,因为 MySQL 不喜欢相关子查询”。

我接受的答案的SQl是at SQL fiddle 。引用的问题比较了 LEFT JOIN 和 INNER JOIN。 SQL Fddle 仅使用 JOIN<,我理解默认为 INNER JOIN。

那么,如何重写查询以使用 LFT JOIN?

最佳答案

我不确定 mysql 上的性能,但是您可以对那些会使您的位置不合格的行进行 LEFT JOIN,然后使用 WHERE 仅选择 LEFT JOIN 不匹配的记录。

SELECT v.id
, v.description
, v.type
, p.time_stamp
, p.latitude
, p.longitude
FROM positions p
JOIN vehicles v ON v.id = p.id
LEFT JOIN positions l ON l.id = p.id
AND l.time_stamp > p.time_stamp
WHERE l.id IS NULL

或者,在 SQLFiddle 中:http://sqlfiddle.com/#!2/2e994/31/0

关于mysql - 如何让这个查询更加高效呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19216565/

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