InterBase クイック スタート:Part IV - クエリ結果のグループ化と並び替え
提供: InterBase
InterBase クイック スタート:Part IV - データの抽出 へ戻る
データベースは、特定の順で行を格納することはしません。クエリを実行すると、その結果がいずれの形でも整理されていないことに気付くでしょう。ORDER BY
句により、結果をどのように整理するかを指定することができます。GROUP BY
句を使用すれば、集計関数の結果をグループ化することができます。
クエリ結果を並べる
ORDER BY
句の構文は次の通り:
ORDER BY [col_name | col_num] [ASC | DESC] [[col_name | col_num] [ASC | DESC], …]
この文では、1 つ以上の列を指定することができます。列は、列名または列の位置(整数)で参照できます。
デフォルトでは、InterBase は昇順(ASCENDING
)を使用します。降順(DESCENDING
)になるように並び替えたい場合、指定する必要があります。
ORDER BY を使用する
- 次のクエリを実行します:
SELECT cust_no, total_value FROM Sales WHERE total_value > 10000
結果が順番になっていないことが確認できます:
- 前のクエリを変更して、結果を
cust_no
列の順番で並び替えるようにします:SELECT cust_no, total_value FROM Sales WHERE total_value > 10000 ORDER BY cust_no
これで、結果は
cust_no
列を昇順で表示するようになりました: - 結果セットを、営業の合計値で、降順に並び替えてみましょう:
SELECT cust_no, total_value FROM Sales WHERE total_value > 10000 ORDER BY total_value DESC
- 複数の列の順で並び替える効果を確認するには、次のクエリを実行します:
SELECT last_name, first_name, phone_ext FROM Employee ORDER BY last_name DESC,first_name