所以基本上,我想按给定列有多少次值来排序我的查询。我通过与另一个计算重复次数的查询进行连接来做到这一点,但我想避免其他广泛的查询。我认为 order by 可能有一些技巧可以满足我的要求。
注意:我正在使用的查询很大并且充满了公司信息,所以我将编写一个示例查询来说明我的问题。
使用
SELECT user1, rev1, user2, rev2, userCount
FROM someTable,
(SELECT user2, count(*) userCount
FROM someTable
WHERE something1 = something2) counts
WHERE something1 = something2
AND counts.user2 = someTable.user2
ORDER BY userCount DESC
我得到了正确的结果,所以我尝试了
SELECT user1, rev1, user2, rev2
FROM someTable
WHERE something1 = something2
ORDER BY COUNT(user2) DESC
但这不会产生我想要的结果。
是否有一些 SQL 技巧可以为我解决这个问题?
谢谢!