我有这个查询并且它无法正常工作,但我的知识应该是!
ERD:
表'Meetingen':
表'Patienten':
我的查询:
运行结果:
所以,这里奇怪的是; 2015年5月1日和2015年5月31日之间的基准(日期)应该只提供日期为5月的'meetingen'表中的人员。 但结果是来自所有'Patienten'的'adres','postcode'和'patientnr'。 尝试了一切......有人看到了吗?
修改 犯了一个愚蠢的错误,m.patientnr = m.patientnr,已经改为p.patientnr = m.patientnr女巫现在给出了以下错误:
答案 0 :(得分:1)
BETWEEN 2015年5月1日和2015年5月31日之间的任何人都应该只提供表格中的人员#meet;'日期是五月的地方
结果中似乎就是这种情况。所有这些日期都是5/1/2015
或5/30/2015
,位于所选范围内。
但结果是,' adres',' postcode'并且' patientnr'来自所有' Patienten'。
是的,因为那些列在该表上。您还希望他们来自哪里?如果两个表上都存在列,则查询将导致错误,指示它无法确定您引用的列。但由于这些列只在一个表上,因此查询可以识别要显示的内容,并显示该表的结果。
另外,请注意:
WHERE m.patientNr = m.patientNr
此条件始终为真。你的意思是这样做吗?
WHERE m.patientNr = p.patientNr
您可能需要调查JOIN
语法以使表连接更明确,而不是在WHERE
子句中进行。将连接与过滤器分离可以使意图更清晰,更容易找到错误。
答案 1 :(得分:1)
这不是日期,而是数据:
Where ...
And datum Between #5/1/2015# And #5/31/2015#