选择表中未包含的值

问题描述:

我的一位朋友正在MS Access上创建一个数据库,他遇到了以下问题。选择表中未包含的值

在他的数据库中,他有一张名为“预订”的表格。这张表跟踪谁已经预订了每个体育大厅和什么时候。 有一个名为“member”的字段,它从“members”表中获取值。 有一个叫做“大厅”的领域,它从一个“大厅”表中取得值。 有一个“日期”字段。 还有一个“时间”字段,它从“槽”表中获取值。这是为了获得一个包含所有可能时间段(09:00,10:00等..直到22:00)的下拉菜单。现在

Member | hall | date | time 
--------+--------+--------+-------- 
Text | text | date | text 
Dropdown|dropdown| typed |dropdown 

,他想要的下拉菜单,显示所有的时间,只显示那些尚未预订所选大厅和日期时间。

为了做到这一点,我相信我需要做一个查询,将执行以下操作,当我输入选定的日期和体育厅:

选择保存插槽未在已经预订的全部时隙以前的预订记录。

然后,我需要弄清楚如何将输入值输入到查询中并获取结果,然后将结果放入下拉菜单的选项中。

任何帮助,将不胜感激

+0

首先,我假设'所有大厅都有可用的时间段'?或者某些大厅可以中午5点而不是9:00 - 22:00?那么不要让这更难,但我假设你允许有人说'我需要这个日期,不关心哪个大厅',或'我需要这个大厅,不关心日期或时间'?您的初始下拉查询可以由不可用的内容确定。看看:https://access-programmers.co.uk/forums/showthread.php?t=240698或https://access-programmers.co.uk/forums/showthread.php?t=169635 –

+0

@ WayneG.Dunn所有大厅都有可用的时间段。不,我们不允许有人说我需要这个日期,我不关心哪个大厅。但是在输入时,我试图让系统在指定大厅和日期后显示哪些时间可用。 –

+1

这是一个非常好的示例。我只是试了一下,它工作正常:http://www.datawright.com.au/access_resources/bookings_without_clashes.htm你需要创建三个查询所示,然后一旦你添加过滤器,它将只显示时间可用。如果您仍然有问题,请告诉我,我可以发布我创建的SQL(使用我自己的名字!) –

你可以让一个单独的查询来生成所有可能的日期,时间和大厅唯一的编号,和相同的查询生成所有预订广告的数量。然后,当输入日期和大厅时,您可以为该日期和大厅的每个可能时间生成一个唯一编号,之后您可以检查该唯一编号是否在查询已预订的唯一编号中。