AccessのSQLビューの使い方をお探しですね。

広告

Accessのデータ操作をもっと自由に!SQLビューの使い方をやさしく解説

Accessでデータを取り出したり更新したりするとき、多くの人が使っているのが「デザインビュー」ですよね。

画面上でマウスをクリックしたりドラッグしたりするだけで操作できるので、直感的で分かりやすいのが魅力です。

でも、仕事で使っていると「もっと複雑な条件を設定したい」「一度にたくさんのデータを処理したい」といった場面が出てきて、デザインビューだけでは物足りなくなることがあります。

そんなときに役立つのが「SQLビュー」です。

SQL文というデータベース専用の命令文を直接書き込むことで、デザインビューでは難しかった処理も思い通りにできるようになります。

この記事では、AccessのSQLビューって何?というところから、実際にSQL文を書いて実行するまでの流れを、できるだけ分かりやすく説明していきます。

SQLビューが使えるようになると、Accessでのデータ管理がぐっと自由になりますし、将来的に他のデータベースを使うときにも応用が効くスキルが身につきますよ。

SQLビューって何?デザインビューとどう違うの?

Microsoft Accessでは、クエリ(データベースへの命令)を作るための画面が大きく2種類用意されています。

それが「デザインビュー」と「SQLビュー」です。

**デザインビュー**は、画面にテーブルを並べて、マウスでフィールドをドラッグしたり条件を入力したりする、視覚的に操作できる画面です。

直感的に使えるので、初めてAccessを触る人でもとっつきやすいのが特徴ですね。

一方、**SQLビュー**は、「SQL(エスキューエル)」という世界共通のデータベース言語を使って、命令を文章のように直接入力していくモードです。

一見すると難しそうに感じるかもしれませんが、慣れてくると複雑な処理もスッキリ書けるようになります。

SQLビューを使うメリット

SQLビューの一番のメリットは、**複雑な処理を正確に、しかも簡潔に書ける**ことです。

デザインビューだと設定画面がごちゃごちゃしてしまうような複雑な条件や、クエリの中にさらに別のクエリを組み込むような高度な操作も、SQL文ならスマートに表現できます。

また、処理の内容が文章として残るので、**後から見返したときに何をしているのか分かりやすい**というメリットもあります。

チームで仕事をしているときも、SQL文を見せれば他の人に処理内容を正確に伝えられます。

さらに、SQLは世界標準の言語なので、**他のデータベースシステムでも使える汎用的なスキル**が身につきます。

SQL ServerやMySQL、Oracleといった本格的なデータベースでもSQLは共通して使われているので、Accessで覚えた知識がそのまま活かせるんです。

逆に言えば、他のシステムで学んだSQLの知識をAccessに持ち込むこともできます。

SQLビューを開いてみよう

AccessでSQLビューを開くのは意外と簡単です。

いくつか方法があるので、状況に応じて使い分けましょう。

新しくSQL文を書く場合

まっさらな状態からSQL文を書きたいときは、次の手順で進めます。

1. 画面上部のリボンから「**作成**」タブをクリック
2. 「**クエリデザイン**」ボタンを押す
3. 「テーブルの表示」という小さなウィンドウが出てきますが、何も選ばずに閉じてOK
4. 画面左上にある「**表示**」ボタンの下側(▼マーク)をクリック
5. メニューから「**SQLビュー**」を選ぶ

すると、真っ白なテキスト入力画面に切り替わります。

ここにSQL文を打ち込んでいくわけです。

すでにあるクエリのSQL文を見る場合

デザインビューで作ったクエリの裏側でどんなSQL文が動いているのか確認したいときは、もっと簡単です。

1. 画面左側のナビゲーションペインに表示されているクエリを**右クリック**
2. メニューから「**SQLビュー**」を選ぶ

これだけで、Accessが自動的に作ってくれたSQL文が見られます。

デザインビューで設定した内容は、すべてSQL文に変換されて動いているんですね。

SQL文を実行してみる

SQLビューの画面はとてもシンプルで、余計な飾りのないテキスト入力エリアになっています。

ここにキーボードでSQL文を打ち込んだら、実行して結果を確認しましょう。

実行方法は簡単です。

画面上部のリボン(「クエリツール」や「クエリデザイン」タブ)にある、**赤い!マーク(感嘆符)の「実行」ボタン**をクリックするだけ。

SQL文に問題がなければ、データがExcelのような表形式で表示されます。

もし書き間違いがあれば、エラーメッセージが表示されて、どこが間違っているか教えてくれます。

SQL文を書いてデータを操作してみよう

SQLビューでは、データを取り出したり、追加したり、更新したり、削除したりと、いろんな操作ができます。

まずは基本中の基本、データを取り出す「SELECT文」から見ていきましょう。

データを取り出す(SELECT文)

一番よく使うのがこのSELECT文です。

例えば、「社員テーブル」に入っているすべてのデータを見たいときは、こう書きます。

“`sql

SELECT * FROM 社員テーブル;

“`

「*」(アスタリスク)は「全部の列」という意味です。

特定の列だけ見たいときは、列名を書きます。

“`sql

SELECT 社員番号, 氏名, 部署 FROM 社員テーブル;

“`

これで、社員番号と氏名と部署の3つの列だけが表示されます。

条件を指定してデータを絞り込む(WHERE句)

全部じゃなくて、特定の条件に合うデータだけを取り出したいときは「WHERE句」を使います。

“`sql

SELECT * FROM 社員テーブル WHERE 部署 = '営業部';

“`

これを実行すると、営業部の人だけのリストが表示されます。

さらに、結果を並べ替えたいときは「ORDER BY句」を追加します。

“`sql

SELECT * FROM 社員テーブル WHERE 部署 = '営業部' ORDER BY 氏名;

“`

これで営業部の人が名前順に並びます。

まるで文章を書くような感覚でデータへの命令を組み立てていく、それがSQLの面白いところです。

データを変更する(アクションクエリ)

SQLビューでは、データを見るだけでなく、中身を書き換えることもできます。

– **UPDATE文**:既にあるデータを変更する
– **INSERT文**:新しいデータを追加する
– **DELETE文**:データを削除する

ただし、これらの命令は**実行すると即座にデータが変わってしまい、基本的に元に戻せません**。

なので、いきなりUPDATEやDELETEを実行するのは危険です。

安全な方法は、まずSELECT文で「これから変更・削除する対象」を確認してから、問題ないと分かったところで命令を書き換えて実行する、という手順を踏むことです。

Accessならではのクセと、実践的な使い方のコツ

AccessのSQLは基本的には標準的なSQLと同じなのですが、いくつか独特のルール(方言)があります。

これを知らないとエラーが出て困ることがあるので、押さえておきましょう。

Access特有のルール

**日付の書き方**

普通のSQLでは日付を `’2023/04/01’` のようにシングルクォーテーション(‘)で囲みますが、Accessでは**シャープ記号(#)で囲みます**。

“`sql

WHERE 入社日 >= #2023/04/01#

“`

**文字をつなげる記号**

文字列同士をくっつけるとき、Accessでは**アンパサンド(&)を使います**。

“`sql

SELECT 姓 & 名 AS フルネーム FROM 社員テーブル;

“`

**あいまい検索の記号**

「〇〇で始まる」といったあいまい検索をするLIKE句では、普通のSQLだと`%`を使いますが、Accessでは**アスタリスク(*)を使います**。

“`sql

WHERE 氏名 LIKE '山田*'

“`

デザインビューとSQLビューを組み合わせて使う

実は、**デザインビューとSQLビューを行ったり来たりしながら使う**のが、一番効率的で間違いも少ない方法です。

最初から最後までSQLビューで手打ちすると、テーブル名や列名を間違えやすいですし、正直面倒です。

そこでおすすめなのが、こんな流れです。

1. **デザインビューで基本部分を作る**
テーブルを画面に配置して、表示したい列を選んで、簡単な条件を設定する

2. **SQLビューに切り替える**
Accessが自動的に作ってくれた正確なSQL文が表示される

3. **細かい調整を手書きで加える**
デザインビューでは設定しにくい複雑な関数やサブクエリを追記する

この方法なら、面倒な入力作業を省きつつ、SQLの柔軟性も最大限に活かせます。

自動生成されたSQL文を読むことで、SQLの勉強にもなるので一石二鳥です。

SQLに苦手意識がある人こそ、この「ハイブリッド活用」を試してみてください。

少しずつSQL文に慣れていけば、いつの間にか自由にデータを操れるようになっているはずです。

まとめ

AccessのSQLビューは、最初は取っつきにくく感じるかもしれませんが、使えるようになると本当に便利です。

複雑な処理もスムーズにこなせるようになりますし、データベースに関する理解も深まります。

ぜひ少しずつ挑戦してみてくださいね!

広告