почему показывается номер блока, когда я хочу показать блок с максимальным количеством отделов?

0

У меня есть таблица отделов с 3 столбцами (имя_раздела, идентификатор_подраздела, номер_блока_отдела), поэтому я хочу получить номер отдела_блока, в котором находится максимальное количество отделов? У меня есть два отдела № 303, 202, и у каждого есть 4 и 2 отдела соответственно? как мне это сделать?

select q1.department_block_number , max(c)
(select department_block_number , count(department_id)as c from department group by department_block_number)q1,
group by department_block_number ;

select q1.department_block_number , max(c)
(select department_block_number , count(department_id)as c from department group by department_block_number)q1,
group by department_block_number ;

Теперь я хочу показать только 303, так как это номер блока с максимальным количеством отделов, но мой запрос показывает 303, 202, пожалуйста, помогите мне. Если вы знаете другой способ, чтобы я мог получить результат, пожалуйста, помогите

  • 0
    Пожалуйста, не используйте теги, которые не относятся к вашему вопросу. Я удалил теги базы данных, так как неясно, какой из них вы на самом деле используете. Пожалуйста, добавьте тег только той базы данных, которую вы фактически используете
  • 0
    хорошо, но я использую оракул
Показать ещё 1 комментарий
Теги:

1 ответ

0

В стандартном SQL, если вы ищете одну строку, вы должны сделать:

select d.department_block_number, count(*)
from department d
group by d.department_block_number
order by count(*) desc
fetch first 1 row only;

Некоторые базы данных по буквам fetch first 1 row only как limit 1 или select top (1) или даже более загадочными способами.

В более старых версиях Oracle (fetch поддерживается в 12c+), вы можете сделать:

select department_block_number, cnt
from (select d.department_block_number, count(*) as cnt
      from department d
      group by d.department_block_number
      order by count(*) desc
     ) d
where rownum = 1;
  • 0
    Кажется, вы не поняли мой вопрос. Я хочу отобразить номер блока с максимальным количеством отделов.
  • 0
    @sAnskarmodi. .. Вот что это делает.
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню