2016-12-19 4 views
0

私はデータベースでクエリを作成して、書籍を最もよくチェックアウトしたreader_idを取得しようとしています。私のテーブルはここにあります:SQLのライブラリからほとんどの書籍をチェックアウトした読者IDを取得するにはどうすればよいですか?

----------------------------------------------------- 
| checkoutID | bookID | readerID | date_checked_out | 
----------------------------------------------------- 
|  1  | 1 |  1 | 01/01/2016 | 
----------------------------------------------------- 
|  2  | 3 |  1 | 01/01/2016 | 
----------------------------------------------------- 
|  3  | 15 |  2 | 01/03/2016 | 
----------------------------------------------------- 
|  4  | 12 |  1 | 01/04/2016 | 
----------------------------------------------------- 
|  5  | 3 |  3 | 01/05/2016 | 
----------------------------------------------------- 
|  6  | 30 |  3 | 01/06/2016 | 
----------------------------------------------------- 
|  7  | 5 |  2 | 01/08/2016 | 
----------------------------------------------------- 
|  8  | 2 |  2 | 01/08/2016 | 
----------------------------------------------------- 
|  9  | 1 |  3 | 01/08/2016 | 
----------------------------------------------------- 
| 10  | 33 |  3 | 01/19/2016 | 
----------------------------------------------------- 

私の質問は、どのように私はtotalIDでほとんどの本をチェックアウトしたreaderIDを得ることができるということです。だから、私はほとんどのチェックアウトとreaderIDを取得することができますどのようにreaderIDでチェックアウトの合計行を数えることによって?

この場合、私が探している答えであるreaderID = 3を取得する必要があります。どのように私はそれを行うことができます誰も教えてくれる?私はこのような質問をしたことがないので、私は尋ねています!

おかげ

+0

'* SELECT、checkout'' 'FROM total_ds'として(' checkoutID')を数える; '与えます私はすべての行に 'total_ids' =' 10'を加えたものです。 –

答えて

5

ちょうどGROUP BYを行うと、最高COUNT()で結果を得る:

SELECT readerID 
    FROM tbl 
GROUP BY readerID 
ORDER BY COUNT(*) DESC 
LIMIT 1; 
+0

それは素晴らしいのように働いた。ありがとう。あなたは私の一日を救った。 :D –

関連する問題