1

Access2010を使用しています。

複数のテーブルを含むデータベースがあり、それぞれに教育データのさまざまなコンポーネントが含まれています。

最終的には、「次の学期にコースを教える予定で、これまでに教えたことがない人」を見つけたいと思います。

現在、私は一連の手順でこれを行っています。

  1. 次の学期に教えているすべての人と彼らが教えていることのリストを含む1つのテーブルを(クエリを介して)作成します(このデータは複数のテーブルから取得されます)。(tbl_NewInstructors)
  2. これまでに教えたことのあるすべての人のリストを含む別のテーブルを(クエリを介して)作成します(ただし、この次の学期は含まれません)。(tbl_NewInstructors2)
  3. このselectステートメントの実行:

    SELECT tbl_NewInstructors.Name, tbl_NewInstructors.Course 
    
    FROM tbl_NewInstructors
    
    WHERE (((Exists (SELECT * from tbl_NewInstructors2 
    
    WHERE tbl_NewInstructors2.Name = tbl_NewInstructors.Name))=False));
    
  4. 私のリストを取得します!

主な問題は、これを実行するたびに2つのテーブルを作成する必要があることです。これらのクエリを使用して作成するテーブルのクエリではなく、現在の2つのselectクエリのクエリを実行するだけです。残念ながら、クエリに対してクエリを実行しようとすると、機能しません。

助言がありますか?

4

1 に答える 1

1

これを試したかどうかはわかりませんが、Access でクエリを保存すると、テーブル (実際には "ビュー") のように機能し、別のクエリを使用してクエリを実行できます。簡単にするために、手順 1 と手順 2 で作成した 2 つのクエリをそれぞれ保存し、手順 3 からクエリを実行して、保存した各クエリの名前を tbl_NewInstructors と tbl_NewInstructors2 に置き換えます。(もちろん、ステップ 3 のクエリを保存して、このレポートが必要なときに実行することもできます)。

ほとんどの場合、これを行うために単一の SQL を作成できますが、クエリを保存する方が簡単で、既に知っている方法を再利用できると思います。

于 2012-10-11T21:53:00.383 に答える