您尝试执行的查询不包含指定的表达式错误
Posted
技术标签:
【中文标题】您尝试执行的查询不包含指定的表达式错误【英文标题】:You tried to execute a query that does not include the specified expression error 【发布时间】:2014-06-25 20:43:30 【问题描述】:我有以下查询
SELECT
MonthNumber,
Sum(PhaseCost) AS PC, Sum(TotalCost) TC,
PC / (TC-PC) AS PER
FROM
Table1
JOIN
Table2 ON Table1.MonthNumber = Table2.MonthNumber
GROUP BY
MonthNumber
它工作正常并在 MS Access 中返回一条记录,但是当我尝试从 .Net 调用相同的记录时,我收到此错误
您尝试执行的查询不包含指定的表达式 PC/(TC-PC),并且不允许 SUM(PC/(TC_PC))。
发生了什么事?
【问题讨论】:
【参考方案1】:您不能以这种方式引用PC
和TC
。您必须使用他们的计算来代替他们的别名。
它应该写成:
SELECT MonthNumber,
Sum(PhaseCost) AS PC,
Sum(TotalCost) AS TC,
Sum(PhaseCost)/(Sum(TotalCost)-Sum(PhaseCost)) AS PER
FROM Table1 Join Table2 ON Table1.MonthNumber = Table2.MonthNumber
Group By MonthNumber
免责声明:我没有测试此 SQL。
【讨论】:
@Sathish 没问题。乐于助人。以上是关于您尝试执行的查询不包含指定的表达式错误的主要内容,如果未能解决你的问题,请参考以下文章
我得到:“您尝试执行的查询不包含指定表达式'OrdID'作为聚合函数的一部分。我该如何绕过?
尝试执行不包含指定表达式“StaffDetails.StaffID”的查询作为聚合函数的一部分