という名前のテーブルを作成し、HOSTEL(hostel_num NUMBER, num_of_stud NUMBER)
値を次のように挿入しました。
--------------------------
hostel_num | num_of_stud |
--------------------------
1001 | 124 |
1001 | 234 |
1002 | 97 |
1002 | 134 |
1003 | 234 |
1004 | 123 |
1004 | 89 |
1001 | 67 |
--------------------------
GROUP BY
コマンドを次のように適用した場合:
SELECT hostel_num, sum(num_of_stud) as total_students
FROM HOSTELS
GROUP BY hostel_num;
、そして私は次のような結果を得ました:
-----------------------------
hotel_num | total_students |
-----------------------------
1003 | 234 |
1001 | 425 |
1002 | 231 |
1004 | 212 |
-----------------------------
さて、私の質問は: なぜhostel_num 1003
トップになったのですか? 行番号 3 に来るべきではありませんか? この種の注文の背後にあるロジックは何ですか?
私は知っています、そのGROUP BY
句は反復的な列の値を統合し、それらをグループ化します。
私の疑問は次のとおりです。ここのように、これらの値を表示する順序をどのように決定するか、次のような出力を期待していました:
-----------------------------
hotel_num | total_students |
-----------------------------
1001 | 425 |
1002 | 231 |
1003 | 234 |
1004 | 212 |
-----------------------------