メインコンテンツにスキップ
モジュール 1 · レッスン 4 / 4コース内の 4/57~8 min
モジュールのレッスン (4/4)

ORDER BYで並べ替える

SQL は、SELECT によって返される行の順序を保証しません。 決定的な順序が必要な場合は、次のように明示的に要求する必要があります ORDER BY:

SQL
SELECT <colonne>
FROM   <tabella>
[WHERE <condizione>]
ORDER BY <colonna> [ASC|DESC] [, <altra-colonna> [ASC|DESC] …];
  • ASC はデフォルトです: 昇順 順序 (1 → 9、A → Z、古い → 最近)。
  • DESC は 降順 (9 → 1、Z → A、最近 → 古い) にソートします。
  • 複数の列で並べ替えることができます。2 番目の基準は最初の基準の関係を破ります。

例

SQL
-- Dal più recente assunto al più vecchio:
SELECT first_name, last_name, hired_on
FROM employees
ORDER BY hired_on DESC;

-- Per dipartimento crescente, poi per stipendio decrescente:
SELECT *
FROM employees
ORDER BY department_id, salary DESC;

試してみてください

運動#sql.m1.l4.e1
試行回数: 0読み込み中…

すべての従業員の姓 (last_name) と給与 (salal) を最高給与から最低給与の順に抽出します。

エディターを読み込み中…
ヒントを表示

ORDER BY 給与 DESC では、最も給与の高い従業員が最初に表示されます。

3 回の試行後に解決策が利用可能になります

復習演習

運動#sql.m1.l4.e2
試行回数: 0読み込み中…

すべての従業員の姓 (last_name)、部門 ID、および給与 (salal) を抽出します。最初に部門 ID の昇順で並べ替えられ、同じ部門内で給与が最も高いものから最も低いものまで並べられます。

エディターを読み込み中…
ヒントを表示

カンマで区切られた 2 つの列をそれぞれ独自の ASC または DESC とともに ORDER BY に渡すことができます。

3 回の試行後に解決策が利用可能になります