Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 为什么我会得到;输入参数值";运行我的MS Access查询时?_Sql_Ms Access - Fatal编程技术网

Sql 为什么我会得到;输入参数值";运行我的MS Access查询时?

Sql 为什么我会得到;输入参数值";运行我的MS Access查询时?,sql,ms-access,Sql,Ms Access,在我的查询中,我使用IIF函数将“Before”或“After”分配给名为beforefter的字段,使用AS 但是,当我运行此查询时,会出现“输入参数值”对话框,要求在之前或之后输入值。如果我从ORDER BY子句中删除before或after DESC,我将无法获得该对话框 下面是令人不快的问题: SELECT d.Scenario, e.Event, IIF(d.LogTime < e.Time, 'Before','After') AS BeforeOrAf

在我的查询中,我使用
IIF
函数将“Before”或“After”分配给名为
beforefter
的字段,使用
AS

但是,当我运行此查询时,会出现“输入参数值”对话框,要求在
之前或之后输入值。如果我从
ORDER BY
子句中删除
before或after DESC
,我将无法获得该对话框

下面是令人不快的问题:

SELECT
    d.Scenario,
    e.Event,
    IIF(d.LogTime < e.Time, 'Before','After') AS BeforeOrAfter,
    d.HeartRate
FROM
    Data d INNER JOIN
    Events e ON d.Scenario = e.Scenario
WHERE
    e.Include = Yes
ORDER BY
    d.Scenario,
    e.Id,
    BeforeOrAfter DESC
选择
d、 情景,
e、 事件,
IIF(d.对数时间
问题:为什么我的
前后的
未被
ORDER by
子句识别?为什么在运行此查询时要求我输入“BeforeOrAfter”的参数值


注意:我尝试使用方括号、单引号、双引号等,但都没有任何区别。

我认为Access无法处理别名功能,因此您必须将IIF块复制到Order By子句中。或者创建一个子查询(如果您的Access版本不是最新的两个或更多版本,那么您甚至可能发现自己甚至无法使用Paranthese)。

您可以指定您正在使用的Access版本吗?选择d.场景,e.事件,IIF(d.LogTime