【发布时间】:2018-06-15 18:21:24
【问题描述】:
尝试使用以下语句根据同一张表中的几个值建立生产百分比:
SELECT avg(sum([Actual]/
(sum(NULLIF([Team Members],0)/(sum(NULLIF([Actual Min],0)))))))
FROM [Shift Production Log]
WHERE [Date] >= DATEADD(dw, -2, :dvalue) AND
[Line] = :Lpram
我收到以下错误:
无法对包含聚合或子查询的表达式执行聚合函数。
我还应该指定我是通过一个 SCADA 系统执行此操作的,该系统将放置我绑定的参数,即“Lpram”和“dvalue”。这些在其他语句中工作正常,所以看来我的问题是实际的 select 语句本身。谢谢!
样本数据:
【问题讨论】:
-
将
sum聚合移动到子查询中,然后在派生字段上使用avg。