没有给出所需参数的值

use*_*164 2 sql ms-access

我试图在访问数据库下面运行qry并且我得到一个错误没有给定参数的值?

SELECT        ID, DateColumn, Less90, Between90180, Between180365, GreaterThan365, SUM(Less90) + SUM(Between90180) + SUM(Between180365) + SUM(GreaterThan365) 
                     AS Total, SUM(Between180365) / Total AS Expr1,
                         (SELECT        SUM(Between180365) / (SUM(Less90) + SUM(Between90180) + SUM(Between180365) + SUM(GreaterThan365))
                           FROM            tblHandpieceFaliuresAge T2
                           WHERE        T2.ID <= tblHandpieceFaliuresAge.ID) AS RunningSum
FROM            tblHandpieceFaliuresAge
GROUP BY ID, DateColumn, Less90, Between90180, Between180365, GreaterThan365
Run Code Online (Sandbox Code Playgroud)

Lit*_*les 6

您错误地键入了其中一列,Access认为您正在尝试传递参数.

再次查看您的字段名称,确保它们都已正确输入.

我相信问题可能是这样的:

SUM(Less90) + SUM(Between90180) + SUM(Between180365) + SUM(GreaterThan365) 
                 AS Total
Run Code Online (Sandbox Code Playgroud)

然后你Total在这里引用它:

SUM(Between180365) / Total
Run Code Online (Sandbox Code Playgroud)

Access无法获取别名并在查询中重用它,您需要:

SUM(Between180365) / 
    (SUM(Less90) + SUM(Between90180) + SUM(Between180365) + SUM(GreaterThan365))
Run Code Online (Sandbox Code Playgroud)

还要确保你处理分母,这样你就不会除以零.