Mam tabelę z elementami użytkownika. Każdy użytkownik może mieć kilka rodzajów przedmiotów i może mieć każdy element więcej niż jeden raz. Chcę zobaczyć, ile elementów każdego typu ma każdy użytkownik. Więc używam następujące zapytanie:Jak mogę ograniczyć liczbę wyników o określoną kolumnę w postgreSQL?
select user_name, count(item_name) as "count_item", item_name
from my_table
group by user_name, item_name
order by user_name, count_item desc;
więc coś takiego:
user_name | count_item | item_name
----------+-------------+-----------
User 1 | 10 | item X
User 1 | 8 | item Y
User 2 | 15 | item A
User 2 | 13 | item B
User 2 | 7 | item C
User 2 | 2 | item X
itp
Teraz chcę zobaczyć tylko 3 pierwsze pozycje każdego użytkownika . W powyższym przykładzie dla użytkownika 1 chcę zobaczyć pozycję X i Y, a dla użytkownika 2 chcę zobaczyć pozycje A, B i C.
Jak mogę to osiągnąć?
Dzięki!
+1 za pytanie z danymi i oczekiwanym wynikiem! –