2017-11-29 14 views
0

私の目標は、上位10個の "タグ"を取得する関数を作ることです。私はSQLでcount(*)関数を使用し、その数の降順で順序を決め、10個の結果に制限する必要があることを知っています(現在は2つしかありません) 私の現在のデータベースには3つの "apple"タグと "ツリー "(例)SQLデータベースの各単語の数を数えるには?

私のSQL文は、現在、私は私が作るべきかに関して、わからないよ

SELECT count(*) FROM database.tags **where** ? order by count(*) desc; 

である私の文では、私が何かを見ることになるためのタグを取得するにはどこに少し似て探して返さ

Apple count(3) , Tree count(2) 
(using MySQL workbench) 

答えて

0

おそらくGROUP BY

SELECT t.tag, COUNT(*) 
FROM database.tags t 
GROUP BY t.tag 
ORDER BY COUNT(*) desc 
LIMIT 10; 
+0

ありがとうございます!これに少し新しい:) – JackGab

+0

また、同じステートメントが他のフィールドを返す方法はありますか?現時点では、タグフィールドに何が表示されているのかを知りたいときには3,2を返します。 @ JackGab。 – JackGab

+0

。 。それは 'SELECT t.tag'がやろうとしていることです。 –

関連する問題