oracle sql как извлечь 1 строку только из возвращаемого результата - PullRequest
0 голосов
/ 25 ноября 2011

как мне улучшить этот код.

select code,max(total) from
(select code,count(*) from table_1 group by code) 

Приведенный выше код не работает, потому что я пытаюсь выполнить функцию MAX для набора результатов из запроса, но не удалось.

1 Ответ

2 голосов
/ 25 ноября 2011

Если вам нужен только номер, вы можете использовать это:

select max(total) 
from (
     select code,
            count(*) as total -- you forgot the column alias here
     from table_1 
     group by code
) 

Если вы хотите код и номер, используйте следующее:

with count_result as (
     select code,
            count(*) as total
     from table_1 
     group by code
) 
select code, 
       total
from count_result
where total = (select max(total) from count_result);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...