前回までに、データの入れ物であるテーブルの設計及び作成方法について説明しました。
今回からは、これらデータを私たちが欲しい形で出力する方法について紹介します。
クエリの機能
データベースにおけるデータ操作等は、「SQL」と呼ばれる言語を用いて行います。
しかしながら、SQL言語の習得は、それなりの時間を要するためAccessではSQL文を自動で作成してくれる「クエリ」という機能があります。
今回はこのクエリ機能について見ていきましょう。
まず、データの操作としては、次のようなものがあります。
・テーブル内のある条件に一致したレコードを抽出する。(選択操作)
・テーブル内の、あるフィールドだけを抽出する。(射影操作)
・テーブル同士を繋いで、必要な情報を抽出する。(結合操作)
・テーブルにレコードを追加する。
・テーブル内のレコードを削除する。
・テーブル内のレコードの情報を更新する。
これら様々なデータ操作に対して、クエリを用いるとSQL文を書かなくても簡単に処理をすることができるようになります。
それでは、さっそくクエリを作成してみましょう。なお、ここで用いるテーブルとデータは購買伝票データベースとして前回までに作成しているテーブルとサンプルデータを用います。
(詳しくは Accessで作る購買伝票について その4 テーブル構成 をご参照ください。)
クエリの作成
まずは、「作成」タブの「クエリデザイン」アイコンをクリックします。
テーブルの表示ダイアログボックスが出るため、データの操作を行いたいテーブルを選定します。まずは、T_購買伝票テーブルを選択して「追加」→「閉じる」とクリックします。
クエリデザイン画面にT_購買伝票テーブルと各フィールドが示されています。ここで「*」は全てのフィールドを意味するワイルドカードになります。
射影操作について
クエリの作成方法はご理解いただけたと思いますので射影操作、つまり、あるフィールドだけを抽出する操作を行いましょう。
「管理番号」フィールドを下側の 【 フィールド 】 欄までドラッグアンドドロップします。
この状態で画面上の「表示」アイコンをクリックすると、T_購買伝票テーブル中「管理番号」フィールドだけが表示されるようになりました。
このようにして、データ操作をクエリを用いて自由に処理することができるようになります。
なお、改めてクエリデザイン画面に戻るには、先ほどクリックした「表示」ボタンを改めてクリックすることで画面遷移できます。
先ほど紹介したデータ操作は「射影操作」でした。それでは次に、「選択操作」について紹介をします。
選択操作
選択操作は、ある条件に合致したレコードを出力するというものです。
例えば、T_購買伝票テーブルのレコードを見てみると以下のようになります。
T_購買伝票
管理番号 | 購買担当者 | 発注先名称 | 発注日 |
1 | 1 | 1 | 2019/10/29 |
2 | 2 | 1 | 2019/10/30 |
3 | 1 | 2 | 2019/10/30 |
4 | 3 | 1 | 2019/10/31 |
5 | 2 | 1 | 2019/10/31 |
ここで、選択操作により発注日が「2019/10/30」のレコードだけを抽出してみましょう。
図5に示すように、全てのフィールドを下側の【 フィールド 】欄に設定した後、「発注日」フィールドの【抽出条件】に「#2019/10/30#」と入力します。
なお、「#」で値を括っていますが、日付型のデータを指定する際には、必ず「#」で当該日付を括るようにしますので、ここで覚えておいていただければと思います。
これにより、図6に示すように発注日が「2019/10/30」のレコードだけが出力されます。
まとめ
今回はクエリ操作の簡単な抽出方法として、「射影操作」と「選択操作」を紹介しました。
これら操作だけでもデータ取得方法としては汎用性が高く、データ整理の業務効率改善が期待できます。
クエリはこの他にもテーブルを結合して、必要な情報を抽出する、「結合操作」等をすることができます。例えば、正規化したテーブルを元々の一連の情報として確認する際には、結合操作が有効な方法となります。次回は、これまでに紹介してきたデータサンプルについて、正規化したテーブルから、結合操作により表として出力する方法を紹介したいと思います。
スポンサーリンク
コメント