для таблицы ниже
tenant_id | status_id
----------------------
3 | 6
---------------------
5 | 7
---------------------
7 | 7
--------------------
3 | 7
-------------------
3 | 7
--------------------
5 | 7
мы можем видеть, что:
- tenant_id = 3 имеет 1 запись с status_id = 6
- tenant_id = 5 имеет 2 записи с status_id = 7
- tenant_id = 7 имеет 1 запись с status_id = 7
- tenant_id = 3 имеет 2 записи с status_id = 7
Для данного STATUS_ID_PARAM я хочу получить всех арендаторов, у которых больше всего записей с STATUS_ID_PARAM
.
Для примера выше, для STATUS_ID_PARAM = 7
запрос должен вернуть 2 записи:
tenant_id | status_id
--------------------
3 | 7
--------------------
5 | 7
потому что у этих арендаторов больше всего записей (по 2 на каждого) с status_id = 7.
Я пробовал что-то подобное, но я не знаю, как продолжить, или, может быть, есть другой способ:
select tenant_id, count(status_id) s
from candidate
where status_id = STATUS_ID_PARAM
group by tenant_id, status_id