我正在尝试在Access数据库中创建一个下拉选取器,以显示未使用的所有主键,在这种情况下,日期仅限于该月的第一天。
我有2个用于此用途的表
tblReport
pk date | Data for this record |
05/01/13 | stuff
06/01/13 | stuff
07/01/13 | stuff
08/01/13 | stuff
和
tblFutureDates
pk date | an index
05/01/13 | 1
06/01/13 | 2
07/01/13 | 3
08/01/13 | 4
09/01/13 | 5
10/01/13 | 6
11/01/13 | 7
12/01/13 | 8
我想要一个查看这两个表的查询,并返回第二个表中不在第一个表中的日期。我尝试了一些连接,但无法弄明白。这就是我到目前为止所做的:
SELECT tblFutureDates.FutureDate
FROM tblFutureDates RIGHT JOIN tblReport
ON tblFutureDates.FutureDate = tblReport.ReportMonth;
然后返回:
05/01/13
06/01/13
07/01/13
08/01/13
由于
答案 0 :(得分:1)
这会从tblFutureDates
NOT IN
tblReport
的日期
SELECT tblFutureDates.FutureDate
FROM tblFutureDates
WHERE tblFutureDates.FutureDate
NOT IN (SELECT tblReport.ReportMonth FROM tblReport)
您还可以使用LEFT JOIN WHERE IS NULL
和NOT EXISTS
了解有关所有3个的更多信息,请参阅this post。