Access講座 基礎の基礎 第三回 ~クエリを作ろう~

Access

こんにちは、じじグラマーのカン太です。
50歳目前、素人同然のスキルで週末プログラマーをしています。

初心者のためのAccess講座の三回目です。
今回は、テーブルからデータを抽出するための「クエリ」を作ってみましょう。

クエリとは

クエリ(query)とは、「問い合わせ」という意味を持つ英語の単語です。
プログラミングではデータベースへの問い合わせや要求などの命令を意味します。

Accessでも「クエリ」というものが用意されています。
コードを一切書かなくても、ある程度の処理は作れてしまいます。

さすがマイクロソフトさん、いい仕事してくれます。

では早速作っていきましょう。

前回まで使用したAccessデータベースを使用します。
まだご覧になっていない方はこちらからどうぞ ↓

クエリの作成

「作成」メニューから「クエリデザイン」を選択してください。
表示するテーブルを聞いてきますので、「社員マスタ」を選んで「追加」をクリックしてください。

クエリのデザインメニューはこんな感じです。

まずは、表示する項目(カラム)を選びます。
テーブルの中から表示したい項目をダブルクリックすると、下の欄に表示してくれます。
(「*」を選ぶと全項目表示となります)
今回は、「社員番号」「姓」「名」の三つを選んでみてください。

「フィールド」欄に項目名、「テーブル」欄に「社員マスタ」と表示されています。

この状態で、「デザイン」メニューから「実行」(!マーク)をクリックしてください。
社員マスタの内容の全データが表示されるはずです。

「クエリ1」タブを右クリックして、「デザインビュー」を選ぶと元の画面に戻ります。

SQLの表示

「クエリ1」タブを右クリックすると、「SQLビュー」というものが選択できます。
   SELECT 社員マスタ.社員番号, 社員マスタ.姓, 社員マスタ.名
   FROM 社員マスタ;
と表示されます。
これがSQLと言われる命令文です。
(SQLについてはこちらの記事で紹介しています)

従来であればこのコードを自力で書く必要がありますが、Accessではマウスクリックだけでコードを自動生成してくれます。
SQLの勉強にもなりますので、クエリを編集した際はSQLビューで構文の確認をすることをおすすめします。

条件の指定

次に、条件を指定でデータを抽出してみましょう。

クエリデザイン画面の下部「社員番号」欄の「抽出条件」に ”0001” を指定します。
「デザインメニュー」 → 「実行」をクリックしてみてください。

サンプルと同じデータを入力していれば、スズキタロウ さんのデータだけが表示されるはずです。
SQLビューを確認すると、「WHERE」句が追加されています。

クエリデザインの画面では、このように抽出条件を指定することができます。
いろいろ条件を入力して試してみてください。

並べ替えの指定

続いて並べ替えを指定してみます。
今の状態であれば、データの抽出する順番は任意です(格納順に出てくる場合が多いです)。

クエリデザイン画面の下部、社員番号欄の「並べ替え」プルダウンメニューから「降順」を選択してください。
「昇順」は小さいもの順に、「降順」は大きいもの順に並び替えてくれます。

同じように、「デザイン」メニュー → 「実行」をクリックすると、社員番号の大きい順に並び替わって表示されているはずです。
SQLビューを確認すると、「ORDER BY」句が追加されていることがわかります。

クエリの検索結果からレポートを印刷する

作成したクエリを使って、リストを印刷することができます。
前回では社員全員の一覧を表示しましたので、今回は社員番号”0001” ~ ”0004” の人を、「姓」の五十音順で呼び出してリストを印刷してみましょう。

クエリの編集&保存

クエリデザインの「社員番号」欄の抽出条件に”0001”~”0004”まで縦に入力してください。
縦に入力していくと 「または(OR条件)」になります。
「姓」欄の並べ替えは、「昇順」を選択してください。

その後、適当な名前をつけてクエリを保存します。
サンプルは、「五十音順クエリ」という名前をつけました。

レポートを作成

前々回のレポート作成を覚えておられるでしょうか。
(忘れた方はこちらを確認ください)

「作成」メニュー → 「レポート」 → 「レポートウィザード」を選択してください。
「テーブル/クエリ」欄は、今回作成したクエリを選択します。
前回同様全項目を選択して「完了」ボタンをクリックします。
クエリの内容が正しく表示されているでしょうか。

まとめ

今回は
・クエリの作成
・条件、並び替えの指定
・作成したクエリを使ったレポートの作成
といった内容を紹介しました。

いかがでしたでしょうか。
条件を指定したクエリを作成し、その条件に合ったデータを抽出したリストができましたでしょうか。

余裕のある方は、前回作ったフォームにボタンを追加して、今回作ったレポートを印刷する機能を作ってみてください。

次回は条件付きのレポート印刷する機能を追加してみましょう。

コメント