開発日誌

MYSQL 重複データを省いて集計結果をソートしたい場合

アクセス集計とかで、

集計してソートをしたい場合のSQL文

SELECT name ,count(access_count) AS count FROM access WHERE date LIKE '2008-06-01%'
GROUP BY name ORDER BY count DESC

重複を省いて(GROUP BY) カウントした値をソートさせています。
ここでは、AS を用いて集計値のカラム名を変更しています。そのまま ORDER BY count(access_count) としてもいけるのだが、
その場合ORDER BY 'count(access_count)' DESC

とする必要があります。
あまり長いSQL文を嫌ったので、わかりやすくしたつもりです。

Webシステムのツボとは

オープンソースの紹介や、プログラミング講座、フリーソフトのレビューなど、Webエンジニアが送る、つれづれ日記。
【隔週金曜日更新】

運営会社:株式会社ジーピーオンライン

RSSを購読する

Monthly Archive