我有一个MS-Access数据库,它从带有6个工作表的Excel文件中提取信息,因此我得到了6个表。我创建了7个查询,所有查询都使用excel数据创建表,其中6个查询项目,即:
SELECT DISTINCT DISPLAYNAME, COUNT(DISPLAYNAME)
FROM [TXFR REC]
GROUP BY DISPLAYNAME
第7个查询通过在其中一个表上使用左连接将这6个表一起拉到一个报表中,其中所有其他表的连接都是DISPLAYNAME。
我创建了一个Form
,其中包含4个按钮和两个日期框,一个开始日期和一个结束日期。我想做的是以下几点:
日期框设置为“常规日期”,用于它们的方法是GetDates,因此您只需单击该框,弹出日历即可选择日期。
我确实在这里看到了这篇文章,但我没有关注到: Date Range Form
以下是用户建议的测试查询中的文字以及答疑人建议的格式:
SELECT [NO ADMITTING DX (HEALTH ISSUE)].PHYSICIANDISPLAYNAME, Count([NO ADMITTING DX (HEALTH ISSUE)].PHYSICIANDISPLAYNAME) AS CountOfPHYSICIANDISPLAYNAME INTO NO_ADMIT_DX_COUNT
FROM [NO ADMITTING DX (HEALTH ISSUE)]
WHERE ((([NO ADMITTING DX (HEALTH ISSUE)].PHYSICIANDISPLAYNAME) Is Not Null) And (([NO ADMITTING DX (HEALTH ISSUE)].AdmitDtm) Between Forms!PRINT_REPORT![START DATE] And FORMS!PRINT_REPORT![END DATE]))
GROUP BY [NO ADMITTING DX (HEALTH ISSUE)].PHYSICIANDISPLAYNAME;
**此查询现在可以正常运行**
感谢您的帮助。
答案 0 :(得分:2)
对于您的查询,请使用类似的内容。
SELECT DISPLAYNAME, COUNT(DISPLAYNAME)
FROM [TXFR REC]
WHERE [TXFR REC].yourDate BETWEEN [Forms]![yourFormName]![yourStartDate]
AND [Forms]![yourFormName]![yourEndDateField]
GROUP BY DISPLAYNAME
您希望依赖日期范围的所有查询都应具有这些参数。这样做的好处是,您可以在表单上为datePicker提供两个日期字段。如果你做了这样的事情,它仍然会起作用:
SELECT DISPLAYNAME, COUNT(DISPLAYNAME)
FROM [TXFR REC]
WHERE [TXFR REC].yourDate BETWEEN [Please Enter a Start Date]
AND [Please Enter an Ending Date]
GROUP BY DISPLAYNAME
但这是所有的偏好。只需在那里按一个按钮,然后转到向导中的Misc,如果需要,选择run query
。
答案 1 :(得分:1)
编辑您的查询以依赖where子句中的表单值:
[Forms]![
表单的名称 ]![
表单的控件 ]
但是,这将使您的查询仅适用于表单。您可以考虑复制查询,重命名和编辑副本以反映其限制。