我正在尝试对存储在 Access 中的数据进行一些复杂的计算(类似于限制)。我可以通过使用分层/嵌套查询来执行计算,其中每个表达式都基于最后一个的结果。我的问题是,在大约第 9 次迭代中,我收到“查询太复杂”错误。我的理解是这是因为 Access 限制了可以同时执行的子查询的数量。是否有在 SELECT 语句中使用 AS 的替代方法,可以让我在同一个查询中执行更多迭代?我试图简化我的 SQL 以更好地展示我在做什么(忽略示例中执行的实际计算)。
SELECT Tbl_1.VarA, Tbl_1.VarB,
(VarA^2*([VarA]+[VarB])/2) AS EQ1,
(VarA^2*([VarA]+[EQ1])/2) AS EQ2
FROM Tbl_1
我目前的工作是将最后一次迭代保存到表中,然后对该值运行第二个查询。不过,我觉得这确实是一种不好的做法。
我尝试过,但未成功:(1)基于第一个查询(2)用它们的值替换常量变量(3)嵌套方程,即 (VarA^2*([VarA]+(VarA^2 *([VarA]+[VarB])/2))/2) AS EQ2
如果我没有正确提及某些内容,我会提前道歉,因为我是相对较新的人。