今回から、数回にわたってAccessのクエリについて解説していきます。
クエリはAccessでも重要な位置付けにある機能で、クエリを習得できるかが、Accessを上手に使いこなせるための鍵になってきます。
しかし、「クエリ」という言葉自体なじみが薄く、とっつきづらい印象がありませんか?
そういった食わず嫌いも含め、この記事でクエリの全体像を明らかにしていきますね。
もくじ
Access歴10年の私が、
- 初心者の方がクエリの全体像をイメージできる
- Accessを習得する時にクエリとどうやって向き合ったらよいか
といったことを理解していただけるように書きました。
Accessを習得している方にとって、この記事を読むことでクエリでやるべきことが見えてくると思います!
学習の前提条件として、Accessのテーブルを知っている方が対象になります。
テーブルについて分からないことがある方は、過去記事を先にごらんください。
「Accessのテーブルとは?」ということについて解説しています。
>>Accessのテーブルをマスターするためのツボ
Accessテーブルの作り方について解説しています。
>>Accessのテーブルを作る4つの手順
Accessクエリとはテーブルに指示を出すための機能
クエリを一言で表現すると、「テーブルにいろいろな指示を出すための機能」です。
クエリを活用時は、SQLというデータベース言語を使っているのが重要です。
SQLとは、世の中に出回っているほとんどのデータベースシステム(オラクル・MySQL・Microsoft SQL Serverなど)で共通で使える言語です。
データベースにより、方言のような多少の違いはありますが、基本的に同じ書き方になっています。
Accessで使うクエリはざっくり下の通りです。テーブルの中にあるデータの加工はもちろん、テーブル自身の加工も可能です。
動作 | クエリの種類 | SQL |
---|---|---|
テーブルの条件を絞ったり集計したりする | 選択クエリ | SELECT |
複数のテーブル同士をつなぐ | 選択クエリ | SELECT |
新しいデータを追加する | 追加クエリ | INSERT |
データを書き換える | 更新クエリ | UPDATE |
データを削除する | 削除クエリ | DELETE |
新しいテーブルを作る | テーブル作成クエリ | SELECT~INTO |
テーブルの項目追加やデータ型を変更する | データ定義クエリ | ALTER |
テーブルそのものを削除する | データ定義クエリ | DROP |
その中でも最もよく使われるのは選択クエリです。
そして使い方のバリエーションが一番多いのも選択クエリです。
選択クエリが全てのクエリの基本になるので、最優先で学習することをオススメします。
選択クエリがある程度使えるようになれば、他のクエリに取り掛かるとよいでしょう。
更に、データ定義クエリまで扱えるようになると、Accessを使った自動化で本当にいろんなことが出来るようになります。
Accessクエリの作り方とビューの切替え
では、Accessでクエリの作成や確認を行う画面(ビュー)について解説します。
クエリを作る3つの方法
Accessでクエリを作る方法は、「デザインビュー」・「クエリウィザード」・「SQLビュー」の3種類の中から選べます。
デザインビュー
デザインビューを使っての操作が、定番のクエリ編集の方法になります。
Excelのようにゼロから直感的に操作することはできず、操作方法を訓練しておく必要があります。
しかし、操作方法さえ覚えてしまえば、SQL文を知らなくても直感的にクエリを作ることができます。
「作成タブ」の「クエリデザイン」から、デザインビュー使ってクエリを作ることができます。
クエリウィザード
チュートリアルに沿ってクエリを作ることができます。
クエリの操作に慣れない初心者の方にオススメです。
ウィザードで作ることができるクエリは以下の4種類だけです。
- 選択クエリ
- クロス集計クエリ
- 重複クエリ
- 不一致クエリ
重複クエリと不一致クエリをウィザード以外の方法で作るには、ある程度高いレベルの知識が必要です。
さらに、それらのクエリはたまにしか使わないからこそ、ウィザードで手軽に作成できるのが便利です。
クエリデザインの左隣の「クエリウィザード」から作成できます。
SQLビュー
SQLビューはエディターに直接SQL文を書いていくためのビューです。
前にも書いた通り、クエリは「SQL」というデータベース言語そのものです。
デザインビューは、SQLをわかりやすく扱えるようなデザイン(画面レイアウト)になっているのです。
デザインビューで作ることができないカスタマイズや、データ定義クエリを使う時にSQLビューを使います。
デザインビューに慣れたら、SQLビューを使ったカスタマイズに挑戦するとよいです。
SQLビューを使った編集ができるようになると、Microsoftツール以外の業務システム開発やWEB開発などにも横展開できます。
ビューを切替える方法
Accessのクエリビューの切り替え方法についても解説しておきます。
「デザインタブ」を選択し、「表示」クリックすることでビューを切り替えることができます。
また、クエリタブの右クリックからビューを切り替える方法もよく使いますので、あわせて紹介しておきますね。
右クリックでビューの一覧が表示されますので、使いたいものを選択するだけです。
クエリを作ったあと、結果を確認したい時は「データシートビュー」を選択します。
データシートビューを選択した場合は、テーブルと同じようなレイアウトで表示されます。
クエリを習得するための手順
クエリの使い方をマスターするためのおススメの方法は、FOM出版のMOSテキストを使い倒すことです。
このブログでもクエリの作り方を解説していますが、やはりテキスト通りにひたすら手を動かしたほうが学習効率は高いと思います。
テキストの価格は3,000円程度ですが、マイペースでAccessを学習できる方にはオススメです。
>>MOS ACCESSの学習テキストをAmazonでチェック!!
また、「職場から突然Accessを習得するよう指示されたが時間が取れない」という方については、セミナーを実施している企業がありますので、検索してみるといいですね。
基礎の1日コースで、2~3万円代というのが操作のようです。
習得する手順としては、以下の順で進めるのがおススメです。
- クエリウィザード
- デザインビュー
- SQLビュー
また、デザインビューで作ったクエリを時々SQLビューでどのようにどのように書かれているかを確認すると、更にスキルアップできますよね。
クエリでは関数も使える
また、Accessのクエリには、Excelのように関数があります。
Excelより種類は少なく100種類にも満たないですが、データベースで使う独特な関数が多いです。
関数の分類 | 詳細 |
---|---|
日付・時刻関数 | 年・月・日・時間などの操作を行う(DateDiff関数,Day関数,など) |
文字列操作関数 | 文字を切ったりつないだり(Insrt関数,Left関数など) |
数学関数 | 数値の操作や三角関数なども含む(Int関数,Sgn関数など) |
集計関数 | 対象テーブルのデータを取得(はじめはDではじまる) |
変換関数 | データ型を変換する(はじめにCから始まるものが多い) |
その他の関数 | 条件分岐や表示形式設定なども含む(IIf関数,Format関数) |
例に挙げると、ExcelにIF関数はありますが、Accessの場合は「IIf」関数となります。
Access初心者の方は特に間違えやすい関数になりますので、これから関数を習得したい人は覚えておくと必ず使う時がきます。
クエリを実務で使うコツ
Accessのクエリはテーブルを思い通りに加工して表示させたり、データを変えたりといろいろ便利です。
また、選択クエリを元にして更に選択クエリを作ることができますが、クエリを重ねるのはオススメできません。
後で見返した時にとても見づらくなるからです。
いわゆるスパゲッティコードと言われるものが仕上がってしまいます。
クエリにはそういった欠点があることも知っておきましょう。
Access歴10を超えるぼく自身も、ここ2~3年前まではクエリをひたすら重ねて集計してきました。
職場内のユーザーから「集計方法の変更」を依頼されたときは、たくさん作ったクエリ内部の調査でかなり時間がかかってしまい、大変な思いをしてきました。
クエリを重ねまくったAccessデータベースは現在も不安定な状態で稼働していますが、ようやく最近になって抜本的な改修を行っているところです。
ただし、一回限りでデータを加工したい場合のみに限り、クエリを重ねても問題ないです。
しかし、目的が達成したら作ったクエリは必ず削除するようにしましょう。
そのまま残すと後でAccessの改修を行う時、調査に時間がかかります。
一方、自動化を意識したAccessデータベースを構築したい場合は、VBA上でクエリを操作する方法がオススメです。
- データを集計したい時にクエリを作る
- データの集計が終わったらクエリを削除する
上のような動きはVBAのプログラムコードでも指示できます。
VBAからの命令ができるようになれば、データ加工で行いたいことのほとんどが実現できるようになります。
せっかくAccessを習得するなら、VBAでクエリ操作をマスターすることを目標にすると良いでしょう。
クエリをVBAで活用する方法については、いずれ記事を書く予定にしています。
まとめ
今回はクエリの全体像についてまとめました。
何となくイメージはつかめましたか?
クエリの特徴をイメージできれば、習得が楽になります。
このブログでもクエリの作り方について解説しますが、やっぱりFOM出版のMOSテキストで問題を解いていくのが一番の近道ではないでしょうか?
それでも、以下のように考えている方は当ブログのクエリを解説しているページを参考にしていただければと思います。
- 出来るだけ費用をかけたくない
- テキストを使わなくても習得できる
クエリはAccessの強力な機能の一つです。
ぜひ当ブログを活用してクエリの基礎から応用まで習得し、スキルアップに役立ててください。
本記事の続きは、クエリウィザードの使い方を解説した記事です。
≫「【入門】Accessクエリウィザードの使い方について」
最後に、ブログでは他のAccessの機能についても解説しています。
よかったらトップページから希望の機能を探してみてください。
また、Accessのータベース設計のまとめ記事もありますので、そちらもごらんください。
≫ これだけで大丈夫! | Accessアプリを学びたい人のための学習手引き