首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据SQL中的2个计算列计算一个字段

根据SQL中的2个计算列计算一个字段
EN

Stack Overflow用户
提问于 2017-07-13 22:29:57
回答 1查看 15关注 0票数 0

我有一个查询,它根据一个称为工具单元的公共标识符对几个值进行求和。我正在尝试弄清楚如何添加一个列来计算这个公式:(SumOfAct - SumOfStd) / (SumOfStd)

我在想,某种带有内部连接的子查询可能会起作用,但我不确定如何让它看起来正确。

下面是我的代码,它得到了我想要的所有东西,除了那个计算列:

代码语言:javascript
复制
SELECT v_MES_OrderIssues.AssignedWorkcell
 , CONVERT(Decimal(10,2), Sum(v_SAP_OrderOperations.Std)) AS SumOfStd
 , CONVERT(Decimal(10,2), Sum(v_SAP_OrderOperations.Act)) AS SumOfAct
 , CONVERT(Decimal(10,2), Sum(v_SAP_OrderOperations.Variance)) AS SumOfVariance

FROM (v_SAP_OrderOperations 
LEFT JOIN v_SAP_Orders ON v_SAP_OrderOperations.Ordr = v_SAP_Orders.Ordr) 
LEFT JOIN v_MES_OrderIssues ON v_SAP_OrderOperations.Ordr = v_MES_OrderIssues.WOrder
WHERE (((v_SAP_Orders.OpenOrder) Like '1')
AND ((v_SAP_Orders.Equipment) Is Not NULL)
AND ((v_SAP_OrderOperations.ACT)>0))
AND ((v_MES_OrderIssues.AssignedWorkcell) Like 'S5H%W')
AND ((v_MES_OrderIssues.DateTimeClosed) Is Null)
OR (((v_SAP_Orders.OpenOrder) Like '1')
AND ((v_SAP_Orders.Equipment) Is Not NULL)
AND ((v_SAP_OrderOperations.OpenOp) Like '0'))
AND ((v_MES_OrderIssues.AssignedWorkcell) Like 'S5H%W')
AND ((v_MES_OrderIssues.DateTimeClosed) Is Null)

GROUP BY v_MES_OrderIssues.AssignedWorkcell

ORDER BY Sum(v_SAP_OrderOperations.Variance) DESC
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-13 22:48:18

如果我没弄错,你可以直接在SELECT子句中完成

代码语言:javascript
复制
SELECT v_MES_OrderIssues.AssignedWorkcell
 , CONVERT(Decimal(10,2), Sum(v_SAP_OrderOperations.Std)) AS SumOfStd
 , CONVERT(Decimal(10,2), Sum(v_SAP_OrderOperations.Act)) AS SumOfAct
 , CONVERT(Decimal(10,2), Sum(v_SAP_OrderOperations.Variance)) AS SumOfVariance
 , CONVERT(Decimal(10,2), (Sum(v_SAP_OrderOperations.Act) - Sum(v_SAP_OrderOperations.Std))/ Sum(v_SAP_OrderOperations.Std)) AS percentage
...

顺便说一句,

代码语言:javascript
复制
LEFT JOIN v_SAP_Orders 
...
WHERE (((v_SAP_Orders.OpenOrder) Like '1')

作为左连接表表达式中的列,因此禁止具有NULL值,因此将为INNER JOIN。您可能希望将谓词移动到ON子句,以使其保持左连接。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45083668

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档