4

我有一个参数查询,根据用户输入的开始日期和今天的日期从我的表中选择信息。我想使用 WHERE 语句搜索表中的两个字段,而无需输入两次开始日期的提示。现在我有:

SELECT PatientSurvey.PatientID
FROM PatientSurvey
WHERE (PatientSurvey.[6MonthSurveyReturn] OR PatientSurvey.[12MonthSurveyReturn]) Between [Enter the last date checked for:] And Date();

这似乎不起作用。但是,如果我执行以下操作:

SELECT PatientSurvey.PatientID
FROM PatientSurvey
WHERE (PatientSurvey.[6MonthSurveyReturn]) Between [Enter the last date checked for:] And Date() OR (PatientSurvey.[12MonthSurveyReturn]) Between [Enter the last date checked for:] And Date();

然后它会提示用户两次输入相同的输入。如何防止这种情况?

4

1 回答 1

4

在查询中添加 PARAMETERS 声明。

PARAMETERS [Enter the last date checked for:] DateTime;
SELECT PatientSurvey.PatientID
FROM PatientSurvey
WHERE
       (([PatientSurvey].[6MonthSurveyReturn]) Between [Enter the last date checked for:] And Date())
    OR (([PatientSurvey].[12MonthSurveyReturn]) Between [Enter the last date checked for:] And Date());
于 2011-08-05T00:03:43.567 回答