使用sql中一行的值定义新列

Mimi

下面的代码有效

SET @SQL = '  
SELECT SC.Name AS BUYER, 
CASE WHEN PPC.FactoryName = ''ANANTA'' THEN OM.OrderQty END AS Unit1_Qty
FROM LineAllocation LA
INNER JOIN OrderMaster OM ON LA.OrderRef= OM.OrderRefID
INNER JOIN AmanOTS..FileRef FR ON FR.FileRefID = OM.FileRefID
INNER JOIN SystemManager..Contacts SC ON SC.Code=OM.BuyerCode
INNER JOIN SystemManager..ProductionProcessCostCenter PPC ON PPC.CostCenter= LA.Line
'
Exec(@sql)

但是,我想根据情况来另写一栏。我试过了

CASE WHEN PPC.FactoryName = ''ANANTA'' THEN OM.OrderQty END AS Unit1_Qty,
Unit1_Qty * FR.Rate as Unit1_Value

还有这个

CASE WHEN PPC.FactoryName = ''ANANTA'' THEN OM.OrderQty END AS Unit1_Qty,
CASE WHEN PPC.FactoryName = ''ANANTA'' THEN Unit1_Qty * FR.Rate END AS Unit1_Value

但是他们不起作用。我现在能做什么?

不要在SELECT语句中引用结果字段的别名

SET @SQL = '  
SELECT SC.Name AS BUYER, 
CASE WHEN PPC.FactoryName = ''ANANTA'' THEN OM.OrderQty END AS Unit1_Qty,
-- OM.OrderQty instead of Unit1_Qty
CASE WHEN PPC.FactoryName = ''ANANTA'' THEN OM.OrderQty * FR.Rate END AS Unit1_Value 
FROM LineAllocation LA
INNER JOIN OrderMaster OM ON LA.OrderRef= OM.OrderRefID
INNER JOIN AmanOTS..FileRef FR ON FR.FileRefID = OM.FileRefID
INNER JOIN SystemManager..Contacts SC ON SC.Code=OM.BuyerCode
INNER JOIN SystemManager..ProductionProcessCostCenter PPC ON PPC.CostCenter= LA.Line
'
Exec(@sql)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在使用sql中的一行的值定义新列之后,我想要一个新列,该列将是这些列的总和

来自分类Dev

如何评估熊猫数据框中一行的所有值并写入新列

来自分类Dev

对SQL Server中一行中的所有列值求和

来自分类Dev

如何从SQL中一行的多列中获取最小值

来自分类Dev

SQL Server 2010中一行的列总和

来自分类Dev

如何根据sql中一列的sting值生成新行?

来自分类Dev

如何使用 datagrid 向特定列中一行中的每个值发送短信。VB6

来自分类Dev

使用每一行的非空值创建一个新列

来自分类Dev

Spark使用上一行的值将新列添加到数据框

来自分类Dev

Python使用Pandas从同一行中的两个值的条件生成新列

来自分类Dev

具有前一行值的新列

来自分类Dev

根据bash或awk中一行的值对列重新排序

来自分类Dev

根据numpy数组中一行的重复值删除列

来自分类Dev

ubuntu linux shell脚本更改文本文件中一行的列值

来自分类Dev

匹配 Excel 中四列中一行中的比较值

来自分类Dev

获取数据框中一行的最小值的列的名称

来自分类Dev

如果其中一行包含特定值,则返回列中具有重复值的行

来自分类Dev

如何使用上一行的列值来计算下一行的值

来自分类Dev

使用Postgres SQL从上一行设置多个列值

来自分类Dev

保留R中一行中的非重复值

来自分类Dev

更新从最后一行开始的sql中的列值

来自分类Dev

Oracle SQL从唯一行返回列值

来自分类Dev

Teradata SQL - 选择不同的返回重复行,其中一行具有空值

来自分类Dev

Laravel中一行的所有列的总和

来自分类Dev

如何插入新行并根据前一行的值增加一列?

来自分类Dev

使用pl / sql在一行中重复值

来自分类Dev

如何创建基于同一行中另一列的值命名的新列?

来自分类Dev

使用上一行更新列值

来自分类Dev

根据不同列中的前一行和同一列的当前行的值生成一个新列,使用 awk

Related 相关文章

  1. 1

    在使用sql中的一行的值定义新列之后,我想要一个新列,该列将是这些列的总和

  2. 2

    如何评估熊猫数据框中一行的所有值并写入新列

  3. 3

    对SQL Server中一行中的所有列值求和

  4. 4

    如何从SQL中一行的多列中获取最小值

  5. 5

    SQL Server 2010中一行的列总和

  6. 6

    如何根据sql中一列的sting值生成新行?

  7. 7

    如何使用 datagrid 向特定列中一行中的每个值发送短信。VB6

  8. 8

    使用每一行的非空值创建一个新列

  9. 9

    Spark使用上一行的值将新列添加到数据框

  10. 10

    Python使用Pandas从同一行中的两个值的条件生成新列

  11. 11

    具有前一行值的新列

  12. 12

    根据bash或awk中一行的值对列重新排序

  13. 13

    根据numpy数组中一行的重复值删除列

  14. 14

    ubuntu linux shell脚本更改文本文件中一行的列值

  15. 15

    匹配 Excel 中四列中一行中的比较值

  16. 16

    获取数据框中一行的最小值的列的名称

  17. 17

    如果其中一行包含特定值,则返回列中具有重复值的行

  18. 18

    如何使用上一行的列值来计算下一行的值

  19. 19

    使用Postgres SQL从上一行设置多个列值

  20. 20

    保留R中一行中的非重复值

  21. 21

    更新从最后一行开始的sql中的列值

  22. 22

    Oracle SQL从唯一行返回列值

  23. 23

    Teradata SQL - 选择不同的返回重复行,其中一行具有空值

  24. 24

    Laravel中一行的所有列的总和

  25. 25

    如何插入新行并根据前一行的值增加一列?

  26. 26

    使用pl / sql在一行中重复值

  27. 27

    如何创建基于同一行中另一列的值命名的新列?

  28. 28

    使用上一行更新列值

  29. 29

    根据不同列中的前一行和同一列的当前行的值生成一个新列,使用 awk

热门标签

归档