基本(Access)

【超入門】Accessクエリとは?全体像について解説します!

スポンサーリンク

こんにちは。システム担当の父親、KATSUです。
Excel歴20年、Access歴10年ですが、ブログ歴は1年半で、週1ペースで新記事を投稿しています。

今回から、数回にわたって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ビューを使ったカスタマイズに挑戦するとよいです。
SQLビューを使った編集ができるようになると、Microsoftツール以外の業務システム開発やWEB開発などにも横展開できます

ビューを切替える方法

Accessのクエリビューの切り替え方法についても解説しておきます。

「デザインタブ」を選択し、「表示」クリックすることでビューを切り替えることができます。

リボンからビューを切り替える

また、クエリタブの右クリックからビューを切り替える方法もよく使いますので、あわせて紹介しておきますね。

クエリのタブを右クリック

右クリックでビューの一覧が表示されますので、使いたいものを選択するだけです。

タグからビューを切り替える

クエリを作ったあと、結果を確認したい時は「データシートビュー」を選択します。
データシートビューを選択した場合は、テーブルと同じようなレイアウトで表示されます。

データシートビューを表示

クエリを習得するための手順

一番確実にマスターするための方法は、FOM出版のMOSテキストですね。
このブログでもクエリの作り方について近いうちに解説していきますが、やはりテキスト通りにひたすら手を動かしたほうが学習効率は高いと思います。
テキストの価格は3,000円程度ですが、マイペースでAccessを学習できる方にはオススメです。

>>MOS ACCESSの学習テキストをAmazonでチェック!!

また、「職場から急いでAccessをマスターするよう指示されたが時間が取れない」という方については、セミナーを実施している企業がありますので、検索してみるといいですね。
基礎の1日コースで、2~3万円代というのが操作のようです。

習得する手順としては、

  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のクエリはテーブルを思い通りに加工して表示させたり、データを変えたりといろいろ便利です。

また、選択クエリを元にして更に選択クエリを作ることができます。
この方法は、FOM出版の演習問題で体験することができますが、クエリを重ねるのはオススメできません。
後で見返した時にとても見づらくなるからです。いわゆるスパゲッティコードです。
クエリにはそういった欠点があることも知っておきましょう。

私も、10年前にAccessを使用し始めたとき、クエリをひたすら重ねてバッチ集計する方法を行ってきました。
ユーザーから「集計方法の変更」などを要請されたときには、たくさん作ったクエリ内部の調査のみでかなりの時間を割いてしまい、大変な思いをしたのが記憶に新しいです。
そのクエリを重ねまくったAccessデータベースは現在も不安定な状態で稼働していますが、ようやく2021現在になって抜本的な改修を行っています。

とはいえ、一回限りでデータを加工したい場合のみに限り、クエリを重ねても問題ないです。
ただし、目的が達成したら作ったクエリは必ず削除するようにしましょう
そのまま残すと、後でAccessの改修を行う時に訳が分からなくなります。

一方、自動化のためにシステムを構築したい場合は、VBA上でクエリを操作する方法がオススメです。
クエリの作成と削除をVBAから命令することができます。
データ定義クエリも、基本VBA上で実行します。
VBAからの命令ができるようになれば、データ加工で行いたい事のほとんどができるようになります。

せっかくAccessを習得するなら、VBAでのクエリ操作のマスターを目標にするといいでしょうね。

クエリをVBAで活用する方法については、いずれ記事を書く予定にしています。

まとめ

今回はクエリの全体像についてまとめました。

何となくイメージはつかめましたか?
クエリの特徴をイメージできれば、習得が楽になります。

このブログでもクエリの作り方について解説しますが、やっぱりFOM出版のMOSテキストで問題を解いていくのが、一番の近道ではないでしょうか?

それでも

  • 出来るだけ費用をかけたくない
  • テキストを使わなくても習得できる

という方は、このブログで詳しく解説していきますので、更新を待っていてくださいね。

本記事の続きは、クエリウィザードの解説になります。
>>「【入門】Accessクエリウィザードの使い方について」

スポンサーリンク

-基本(Access)