2016-09-28 64 views
1

這是我有:的條目的最大數量的選擇值 - Oracle數據庫

的表PATENT與列ASSIGNEE。我想找到ASSIGNEE表中有最大數量的條目。

而這正是我試圖做的事:

SELECT ASSIGNEE 
FROM (
    SELECT ASSIGNEE, count(*) num_assignee 
    FROM PATENT 
    GROUP BY ASSIGNEE 
    ORDER BY num_assignee DESC 
) 
WHERE ROWNUM <= 1 

這個偉大的工程只有一個最大的,然而,在平局的情況下,不顯示其他ASSIGNEE。如何解決這個問題?

回答

3

你可以試試這個:

SELECT assignee 
FROM (
    SELECT assignee, 
      count(*) num_assignee, 
      MAX(count(*)) OVER() max_num_assignee 
    FROM patent 
    GROUP BY assignee 
    ) 
WHERE num_assignee = max_num_assignee; 
-2

試試這個。

SELECT assignee 
FROM 
(
    SELECT TOP 1 assignee, count(*) num_assignee 
    FROM patent 
    GROUP BY assignee 
    ORDER BY num_assignee DESC 
) Source