“查找无与伦比的”查询 - 使用查询而不是表

时间:2012-10-11 21:46:31

标签: ms-access

我正在使用Access 2010。

我有一个包含多个表的数据库,每个表包含不同的教学数据组件。

最终,我想找到“将在即将到来的学期教授课程,以前从未教过课程的人。”

目前,我正在通过一系列步骤来实现这一目标:

  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. 获取我的清单!

  5. 主要问题是每次我想要运行它时我必须创建两个表,并且我会RATHER只运行我的两个当前选择查询的查询,而不是通过这些查询创建的表的查询。不幸的是,当我尝试对查询运行查询时,它不起作用。

    有什么建议吗?

1 个答案:

答案 0 :(得分:1)

我不确定您是否尝试过此操作,但在保存查询时在Access中,它就像一个表(实际上是“视图”),然后您可以使用其他查询进行查询。为了简单起见,只需保存在步骤1和步骤2中创建的每个查询,然后从步骤3运行查询,将每个已保存查询的名称替换为tbl_NewInstructors和tbl_NewInstructors2。 (当然,您可以保存步骤3中的查询,只需在需要此报告时运行它。)

最有可能的是,您可以创建一个SQL来执行此操作,但我认为保存查询会更简单,并将重用您已知的方法。