gpt4 book ai didi

mysql - 在子查询中按列排序最终结果

转载 作者:行者123 更新时间:2023-11-29 02:15:59 27 4
gpt4 key购买 nike

我有一个查询,它根据子查询的结果进行查询。我想按子查询中的列排序,但从我对类似问题的观察中可以理解,你真的不应该在子查询中使用 ORDER BY(这使得这个查询不正确)。

有什么方法可以使用别名或类似的东西来做到这一点吗?

在子查询表中有一个名为“lastUpdated”的列,我想根据它对主查询表中的结果进行排序。

请在下面查看我尝试的查询:

SELECT * FROM TrackedEntityInstance 
WHERE localId IN
(SELECT DISTINCT localTrackedEntityInstanceId FROM Enrollment
WHERE program IS 'SSLpOM0r1U7' AND orgUnit IS 'gGl6WgM3qzS'
ORDER BY lastUpdated ASC);`

最佳答案

您可以使用如下所示的联接...我认为它也更快..

SELECT *
FROM trackedentityinstance t1
JOIN
(
SELECT DISTINCT localtrackedentityinstanceid, lastupdated
FROM enrollment
WHERE program IS 'SSLpOM0r1U7'
AND orgunit IS 'gGl6WgM3qzS'
) t2
ON t1.id=t2.localtrackedentityinstanceid
ORDER BY t2.lastupdated ASC

我假设您在 trackedentityinstance 表中有 id 字段。如果不是,请调整查询并试一试。

关于mysql - 在子查询中按列排序最终结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39660364/

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