私は次の表を持っています、
リスト:
ID varchar2(33)
Name varchar2(100)
ユーザー:
ID varchar2(33)
Name varchar2(100)
User_Listing
ID auto-generated
UserId references ID from Users
ListingId references ID from Listing
ユーザーのお気に入りのリスト(この場合、User_listingテーブルでカウントが最も多いリスト。たとえば、user_listingテーブルに次のようなものがある場合)を見つけたい<id,user_id,listing_id>,
1 1 2
1 1 3
1 2 3
1 3 3
お気に入りのリストは3です
これは実行するのに適切なクエリですか?
Select Listing.name
from Listing
where Listing.id = (Select p.id
from User_listing p, User_listing q
having count(p.id) > count(q.id)
GROUP BY p.id)
また、お気に入りの上位5つを印刷する必要がある場合、どうすればよいですか?