2017-05-11 19 views
0

私はムービーテーブルから何度も表示される値を表示しようとしています。例えばSQLより多くの回数と回数が表示されます。

movie_id, tag_id, score 
1   1  4 
1   3  5 
2   1  3 
3   2  4 
3   3  5 

結果:{映画-ID、タグID、スコア}

tag_id, times 
1  2 
3  2 
2  1 

そのテーブルには、次の列を有しています。

何回、何回出現するタグIDを取り出すことができますか?

は、私は次のことを試してみたが、それは、各タグ-idの同じ番号を示しています。これも動作します

SELECT tagId, COUNT(tagId) AS ocurrence FROM scores GROUP BY tagId ORDER BY ocurrence DESC 
+0

あなたは "表示される" とはどういう意味ですか? –

+0

例を使って編集しました。 – Lechucico

+0

あなたのdbmsもタグ付け –

答えて

1

私は、あなたが探していると思う:

SELECT TAGID, COUNT(TAGID) 
FROM TABLENAME 
GROUP BY TAGID 
ORDER BY COUNT(TAGID) 

--or you could do a having clause where COUNT(TAG-ID) > 1 
+0

これは良いアプローチ@Lechucicoのようです。 –

+0

これが正しいとお考えですか?各タグには、同じオカレンスが表示されます。 – Lechucico

+0

はいこれは私のSSMS環境で動作します。別のDBMSを使用している場合、いくつかの構文の違いがあるかもしれません。しかし、同じタグIDを取得し続けているのであれば、テーブルのデータを見て、タグIDが異なることを確認する必要があります。 – lnjblue

0
SELECT tagId, COUNT(tagId) FROM scores GROUP BY (tagID) HAVING COUNT(tagId) >= ALL 
    (SELECT COUNT(tagId) FROM scores GROUP BY (tagId)) 

関連する問題