sum()の出力結果順に並び替えをするSQL文
皆さん、こんばんは。
mysql 3.23.49-8.13 を使用しています。
mysql> select name,team_name,sum(point),count(*),max(size),min(size) from data where kind = 'hoge' group by name;
とした時、
+------+---------+----------+--------+---------+---------+
| name |team_name|sum(point)|count(*)|max(size)|min(size)|
+------+---------+----------+--------+---------+---------+
| hro | | 25 | 2 | 46 | 42 |
| hro2 |Project-F| 15 | 1 | 47 | 47 |
| hro3 |Project-F| 90 | 5 | 66 | 39 |
+------+---------+----------+--------+---------+---------+
という結果が得られるのですが、
+------+---------+----------+--------+---------+---------+
| name |team_name|sum(point)|count(*)|max(size)|min(size)|
+------+---------+----------+--------+---------+---------+
| hro3 |Project-F| 90 | 5 | 66 | 39 |
| hro | | 25 | 2 | 46 | 42 |
| hro2 |Project-F| 15 | 1 | 47 | 47 |
+------+---------+----------+--------+---------+---------+
というように、sum(point) 順に並べた結果を得るには、どのようなSQL文を発行したらよいのでしょうか?
select name,team_name,sum(point),count(*),max(size),min(size) from data where kind = 'hoge' group by name order by sum(point) desc;
ってやれると楽だったんですが・・・・・(^^;
お知恵をお貸しください。
補足
できました!ありがとうございます。 ただこの方法で、たとえばMAX(Date)が月曜日で、 土日をはさんだ場合は2日間のデータを取得するのは無理ですよね? SQLでそこまで考えてやることは可能でしょうか? 贅沢言ってすいません・・・。