Access。都道府県順のように、決まった順番で並び替えをしたいけど、どうしたらいいの?
<クエリ:SORT>
Accessのテーブル。インポートした外部データだったりすると、意外とフィールドが無くて、店舗コード順などで並び替えをしたいのに、出来ないことがあります。
かといって、並び替えをしたいだけなのに、テーブルにフィールドを新しく追加して、データを追加してという作業を行うのは、ちょっと面倒です。
そこで、クエリを使うことで、この問題は比較的簡単に解決します。
ただ、クエリを使うといっても、Switch関数を使うとすると、これまた、面倒です。
今回は、次のテーブルを用意しております。
この店舗フィールドを「新宿・品川・渋谷・横浜」という順番で並べたいわけです。
Excelだと、このようなことをしたい場合には、オプションの詳細設定にある「ユーザー設定リストの編集」から、ユーザー設定リストに追加すれば対応することができます。
このユーザー設定リストは、Accessにはないので、Excelと同じ対応方法がつかえないわけです。
なので、もう一つテーブルを用意します。
二つ目のテーブルは、独自の並び替えを行うためのテーブルです。
Excelのユーザー設定リストのようなものです。今回は、「新宿・品川・渋谷・横浜」という順番で並び替えをしたいわけですが、正確には、店舗NO順にしたいわけです。
ポイントは、このテーブルの順番で並び替えを行うことになりますから、店舗NOでも店舗名でもなく、さらに独自な順番というのがあれば、その順番のフィールドを用意する必要があります。
それでは、用意した二つのテーブルをつかって、クエリを作っていきます。
作成タブの「クエリデザイン」をクリックします。
「T店舗売上」テーブルと「T店舗名簿」テーブルを追加します。
両方のテーブルにある、共通しているフィールドを連結してリレーションシップを設定します。
今回は、並び替えを行いたいテーブルのフィールドを全部使用します。
最後尾に、並び替えのキーとなるフィールドである「T店舗名簿」の店舗NOを追加します。
最後尾に追加した、「店舗NO」フィールドは、表示させる必要がないので、非表示します。
そもそも、やりたいことは、並び替えをすることなので、「昇順」で並び替えを設定します。
実行して、確認してみましょう。
希望通りの「店舗NO」順で並び替えたクエリをつくることができました。
このように、独自の順番で並び替えを行いたい場合には、テーブルを用意することで、対応することができます。