-1

質問が理にかなっていることを願っています..基本的に、music_idとgenre_id列を含むgenre_tagsというテーブルがあります

このように重複したエントリを含めることができます

music_id | genre_id
281           3
281           3
281           4
243           7
90            6
90            6
90            10

取得したいのは、genre_id に基づく最も重複したエントリです

したがって、上記の例に基づいて、この結果が残ります

music_id | genre_id
281        3
243        7
90         6
4

2 に答える 2

1

これを試して、

SELECT  music_ID, genre_ID
FROM    TableName a
GROUP   BY music_ID, genre_ID
HAVING  COUNT(*) = (SELECT COUNT(*) total 
                    FROM    tableName b
                    WHERE a.music_ID = b.music_ID
                    GROUP   BY music_ID, genre_ID
                    ORDER BY total DESC
                    LIMIT 1)
于 2013-05-04T18:23:59.353 に答える
0
select top 1
genre_id, count(*)
group by genre_id
order by count(*) desc
于 2013-05-04T18:35:49.130 に答える