QUERY関数でデータ抽出はできた。
whereで絞り込みもできた。
…でもそのあと、
毎回手動で並び替えていませんか?
- 抽出 → 並び替え
- 抽出 → 並び替え
- データ更新 → また並び替え
これ、地味に時間がかかります。
実はQUERY関数の中に、
並び替えの指示も一緒に書けるんです。
それが
【ORDER BY(オーダーバイ)】です。
【結論】並び替えは ORDER BY を足すだけ
基本形はこちら。
=QUERY(A1:E,"select * order by B desc",1)
これだけで、
- B列を基準に
- 大きい順(降順)
- 自動で並び替え
が実現します。
手動操作は不要です。
ORDER BYの基本構造
構文はとてもシンプルです。
並び順の指定
desc→ 降順(大きい順)asc→ 昇順(小さい順)

例:B列を小さい順に並べる
=QUERY(A1:E,"select * order by B asc",1)
whereと組み合わせると最強
ORDER BYは、
selectやwhereと一緒に使えます。
例:完了データだけを金額順で並び替え
=QUERY(A1:E,"select * where C='完了' order by B desc",1)
これで、
- C列が「完了」
- B列を大きい順に並び替え
が一発で完了。

手作業との決定的な違い
手動並び替え
- データ更新後に再操作
- 並び替え忘れのリスク
- 抽出と並び替えが分離
ORDER BY使用
- 一度設定すればOK
- データ追加後も自動反映
- 抽出と並び替えが1行で完結
つまり、
スプレッドシートが
「自動で整列された抽出システム」になります。
実務での活用例
- 売上データを金額順に表示
- 未処理タスクを期限順に並び替え
- 担当別データを名前順に表示
- 日付順にレポートを自動生成
並び替えは、
ほぼすべての管理表で必要な処理です。
だからこそ、
関数内に組み込む価値があります。
まとめ|抽出も並び替えも「1行で完結」
- ORDER BYで自動並び替え
- desc=降順、asc=昇順
- whereと組み合わせ可能
- 手作業ゼロで最新状態を維持
QUERY関数は、
- select(抽出)
- where(条件)
- order by(並び替え)
を組み合わせることで、
本格的なデータ抽出エンジンになります。
手作業で並び替えているなら、
今日からORDER BYに置き換えてみてください。
次回予告
次は、
- 複数列で並び替える方法
- group byによる集計
- 日付条件との組み合わせ
QUERYをさらに強化する応用編を解説します。
この記事が役に立ったら、
是非ブックマークしてください!
iDeeerでは、
スプレッドシートを
半自動データシステムに進化させるテクニックを発信しています。

