gpt4 book ai didi

mysql - 避免子查询

转载 作者:行者123 更新时间:2023-12-01 00:49:02 24 4
gpt4 key购买 nike

我已经编写了一个 mysql 查询来使用子查询和连接从两个表中检索数据。查询工作正常,但由于某些性能问题我想避免子查询。

分组前应按日期时间排序。

SELECT a.value1, a.value2, b.value1 FROM (SELECT * FROM A ORDER BY datetime DESC, id DESC) AS a
INNER JOIN B AS b ON b.a_id=a.id
WHERE a.value4="value"
GROUP BY b.value2, b.value3;

我已经尝试了几种不使用子查询来重写它的方法,但仍然找不到解决方案。在这种情况下是否可以避免子查询?

最佳答案

首先,您的子查询似乎没有任何意义。您所做的只是执行一个 ORDER BY,它会在您加入另一个表时立即丢失。你应该能够做到这一点:

SELECT a.value1, a.value2, b.value1 FROM 
A as a
INNER JOIN
B AS b
ON b.a_id=a.id
WHERE a.value4="value"
GROUP BY b.value2, b.value3;

关于mysql - 避免子查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18051916/

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