Для определения максимума агрегированного столбца требуется более одного вычисления, поэтому здесь можно использовать «общее табличное выражение» (cte) для хранения результата, а затем повторно использовать этот результат в предложении where:
with cte as (
select
person_id
, count(item_id) count_items
from mytable
group by
person_id
)
select
*
from cte
where count_items = (select max(count_items) from cte)
Обратите внимание, если более одного человека имеют один и тот же максимальный счет;по этому запросу будет возвращено более одной строки.