PR

レコードの効率的な削除方法 削除クエリの活用

クエリ

データベースを作成してレコードの蓄積が増えてくる中で、不要なデータを削除する機会が出てきます。特に、条件に応じたレコードを一括で削除する場合に、削除クエリを活用することがお勧めです。今回は、Accessの削除クエリについてSQL文と併せて見ていきましょう。

スポンサーリンク

サンプルデータについて

サンプルデータについては、氏名、年齢、所属をまとめたものを更新クエリの紹介時に作成していますが、その際に使用したテーブルを今回も使用したいと思います。(サンプルデータを保存したテーブルの名称を「所属テーブル」とします。)

現状、所属テーブルのレコードは次のようになっています。

表1 サンプルデータ

氏名年齢所属
鈴木 一郎45販売チーム
渡辺 次郎30販売チーム
山田 三朗56販売チーム
佐藤 四巳58事務チーム
堀越 五作43事務チーム
米津 六実22企画チーム

今回は、このサンプルデータを用いて、削除クエリの使い方を見ていきましょう。

削除クエリの作成

まずは、クエリを作成して、テーブルの追加で「所属テーブル」を選択します。次に、クエリ設定画面の【フィールド】に「氏名」、「年齢」及び「所属」フィールドを設定します。そして、「デザイン」タブの「削除」アイコンをクリックします。

図1 削除クエリの作成方法

これにより、画面が切り替わり、図1のように【レコードの削除】項目が選択できるようになる。
この状態で、レコードを選択的に削除してみましょう。

レコードの削除方法

サンプルデータの内、「所属」フィールドが「販売チーム」の値をもつレコードを削除する方法を見てみましょう。この場合、図1に示している通り、「所属」フィールドの【抽出条件】項目に「販売チーム」と入力し、画面左上の「実行」アイコンをクリックすると図2に示すダイアログボックスが表示されるため、「はい」をクリックすることで削除が実行されます。

図2 削除クエリの実行

削除操作後の「所属テーブル」を確認してみてください。この結果、「所属」フィールドに 「販売チーム」の値をもつレコードが全て削除されていることが確認できたと思います。
今回は、「所属」フィールドだけに条件設定しましたが、「年齢」フィールドにも抽出条件を設定すれば、年齢と所属を抽出条件として両方の条件に適合するレコードを削除することができます。これは、Excelよりも簡単に対象レコードを抽出することができるため、業務効率は向上すると思います。

なお、今回の例におけるSQL文は次のようになります。

DELETE 所属テーブル.氏名, 所属テーブル.年齢, 所属テーブル.所属
FROM 所属テーブル
WHERE (((所属テーブル.所属)=”販売チーム”));

ここで、ポイントとなる点は「DELETE field FROM A WHERE B」という構文です。
SQL文ではDELETE構文を用いることで、WHERE条件に一致したレコードを削除することができます。 このように、レコードの削除条件を設定することで、業務効率の改善が図れますので、是非削除クエリを活用していただければと思います。

まとめ

今回はデータベースにおけるレコードの削除方法について紹介しました。Accessでは、削除に係るSQL文を削除クエリを通じて作成してくれますので、是非業務効率の改善に向けて活用していただければと思います。

スポンサーリンク

コメント

タイトルとURLをコピーしました