Oracle SQL - 保持前100名最高计数

时间:2017-10-10 05:02:13

标签: sql oracle count limit

我的任务是在输出中只保留100个最大的客户端,因此我需要计算每个客户的ID数量,然后只保留前100个。输出应该包含所有必需的变量,没有分组。

示例输出如下:

Var1, Var2, ID
aaaaaaa, bbbbbbb, 12345
ccccccc, ddddddd, 12345
...
eeeeeee, fffffff, 67890

到目前为止,请找到我最好的尝试(我正在努力解决此查询的限制部分):

SELECT 

A.Var1,
P.Var2, 
P.ID

FROM Database1 P

INNER JOIN Database2 A
ON P.ID = A.ID

INNER JOIN 
(
SELECT ID, COUNT(*) AS IDs_per_BAN

FROM Database1 

GROUP BY ID 
) NUM_COUNT
ON P.ID = NUM_COUNT.ID

WHERE

(
???
)

ORDER BY NUM_COUNT.IDs_per_BAN DESC

0 个答案:

没有答案