SELECT・INSERTとサブクエリで効率化
- 2024年12月06日
自動登録とサブクエリ活用
学生管理って難しそう…そう思ったことはありませんか?
ここでは、「自動登録」と「条件付き検索」の2つの便利機能について、分かりやすく解説します!
📘 1. 自動登録:ボタン1つでデータ追加!(SELECT INSERT)
「情報」テーブルに登録された学校学生データを使って、「学校学生」テーブルに自動で登録する仕組みです。
➣設定例:画面設計(学校学生管理):
詳細設計
①データ検索テーブル:「M_情報」
②データ追加テーブル:「M_学校学生」
③テーブルの対応関係:M_情報.学校ID=M_学校学生.学校ID、M_情報.学校名=M_学校学生.学校名、M_情報.学生ID=M_学校学生.学生ID、M_情報.学生名=M_学校学生.学生名
➣結果:処理前:
「学校学生」画面には検索結果がなく、空白になっています。
「情報」画面には3件のレコードが登録されています。
処理後:
「実行」ボタンをクリックすると、「情報」テーブルからデータを取得し、「学校学生」テーブルに登録した後、画面に表示されました!
📘 2. 条件付きでデータをピンポイント検索(サブクエリ活用)
サブクエリ(Subquery)は、SQLクエリ内で別のクエリを実行するために使います
➣設定例:詳細設計
①サブクエリ処理(データ操作条件1):画面に入力された学生IDを基に、情報テーブルから学校IDを検索します。
②クエリ処理(データ操作1):サブクエリの処理は、すべての学校の中で学生の年齢の最大値を取得しますが、上記の学生が所属している学校は除外します。
サブクエリ(Subquery)は、主に以下のような場面で使用されます:
1)ネストされたクエリが必要な場合:サブクエリは、主クエリの中で別のクエリを実行したい場合に使用されます。例えば、ある条件に基づいてデータを絞り込む必要がある時に便利です。
2)集計結果をフィルタリングする場合:サブクエリを使用することで、集計関数(COUNT、AVG、MAXなど)を用いた結果をフィルタリングできます。
3)複雑な条件でデータを取得したい場合:サブクエリは、複数のテーブルを結合することなく、独立してデータを取得できるため、複雑な条件を簡潔に記述できます。
4)動的な値を使用する場合:サブクエリは、主クエリで使用される値を動的に生成する場合にも使用されます。例えば、最新のデータや変動する値を取得する場合に便利です。
サブクエリは、複雑なクエリをシンプルにするため、特に条件付きでデータをフィルタリングしたり、集計結果に基づいて他のデータを抽出したい場合に有効です。
➣結果:処理前:
「学校学生」画面には4件のレコードが登録されています。
「情報」画面には3件のレコードが登録されています。
処理後:
「実行2」ボタンをクリックすると、入力した学生IDに基づき、「情報」テーブルから「東京大学」を検索し、その後、学生テーブルで学校が東京大学でないレコードの中から年齢の最大値を検索して表示しました!
🔍 まとめ
このような便利なデータ操作機能を使うと、ユーザーは簡単にデータの追加ができ、手動での入力作業を省くことができます。ボタン一つで大量のデータを一括登録できるため、効率的に業務を進めることができ、作業の負担を大幅に軽減します。