2011-12-15 5 views
1
ID fileName userName 
1 abc1  Emre 
2 abc2  Abc 
3 abc2  John 
4 abc1  Rick 
5 abc1  Rick 

スクリーン印刷: Mysql;データの合計


トップダウンロードしたファイル:私は最もダウンロードされたファイルを表示したい 1) ABC1 2) ABC2

。どのように私はmysqlクエリを行うことができますか?

(工学のため申し訳ありませんが)

答えて

2

fileNameによってグループ化集計COUNT()を取得します。ダウンロード数で降順に並べ替え、返される結果の数で制限します(必要な場合)。

SELECT 
    fileName, 
    COUNT(*) AS downloads 
FROM yourtable 
GROUP BY fileName 
ORDER BY downloads DESC 
/* Optionally limit the number returned */ 
LIMIT 2; 
+0

'FROM'句にグループ化することによってCOUNTの集計関数を使用することができます。 :-) –

+0

@JoeStefanelli確かに... –

+0

ありがとうございます! – Editor

1
SELECT fileName, COUNT(*) AS DownloadCount 
    FROM YourTable 
    GROUP BY fileName 
    ORDER BY DownloadCount DESC; 
+0

ありがとうございます! – Editor

0

あなたが役に立つかもしれませんfileName

select fileName, count(1) as qty_dl 
    from your_table 
group by fileName 
order by qty_dl desc 
+0

ありがとうございます! – Editor

0
SELECT `fileName`, COUNT(`fileName`) AS `count` 
FROM `tableName` 
GROUP BY `fileName` 
ORDER BY `count` DESC 
LIMIT 2; 
+0

ありがとうございます! – Editor