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)になるように並び替えたい場合、指定する必要があります。

Image 025.jpg ORDER BY を使用する

  1. 次のクエリを実行します:
    SELECT cust_no,
           total_value
    FROM   Sales
    WHERE  total_value > 10000
    

    結果が順番になっていないことが確認できます:

    TutorialGrouping1.png
  2. 前のクエリを変更して、結果を cust_no 列の順番で並び替えるようにします:
    SELECT cust_no,
           total_value
    FROM   Sales
    WHERE  total_value > 10000
    ORDER  BY cust_no
    

    これで、結果は cust_no 列を昇順で表示するようになりました:

    TutorialGrouping2.png
  3. 結果セットを、営業の合計値で、降順に並び替えてみましょう:
    SELECT cust_no,
           total_value
    FROM   Sales
    WHERE  total_value > 10000
    ORDER  BY total_value DESC
    
  4. 複数の列の順で並び替える効果を確認するには、次のクエリを実行します:
    SELECT last_name,
           first_name,
           phone_ext
    FROM   Employee
    ORDER  BY last_name DESC,first_name
    

トピック

次は: