如何将表中的特定值添加到新列?

克劳德

我有一个“订单表”。在“订单表”中,有一个多用途的列,称为“单位”。

OrderCode,ProductCode,ProductName,Unit,ProductId 123、002,
Box No,
1、1111 123、223344,Abc,4、11873993 123、888444 
,Zxc,1、66447433 
123、883372,Ubn,2、88575744 123、002 
, Box No,
2,1111 123,788665,Muq,3,88887777 
123,900223 
,Zue,1,22234567 123,665543,Erv,1,12399998

对于“”,“单位”列的值从1到N为特定值,其中ProductID = 1111。另外,“单位”列还具有其他ProductID的单位值

每个订单均以ProductID = 1111开始,第一个框号= 1(在“单位”字段中显示)以下产品位于同一框中,直到下一个ProductID = 1111,然后框号= N(在“单位”字段中显示)

单位字段显示除ProductID = 1111以外的产品数量

我试过了:

CASE WHEN ProductId = 1111 THEN Unit END AS BoxNo 

但这是行不通的。

我想添加一个新列“ BoxNo”,其中包含每个产品的箱号

OrderCode,    BoxNo,产品代码,产品名称,单元,产品编号
123,         ,002,盒号,1,1111 
123,          1,223344,ABC,如图4所示,11873993 
123,          1,888444,ZXC,1,66474833 
123,          1,883372 ,UBN,2,88575744 
123,         ,002,盒号,2,1111 
123,          2,788665,Muq,3,88887777 
123          2,        900223,        Zue,           1,      22234567
123,         2,        665543,        Erv,           1,      12399998
戈登·利诺夫

您的结果似乎假设在表中排序。SQL表表示无序集。您需要一列来指定顺序。

使用这样的列,您可以使用窗口函数和逻辑来执行此操作case

select t.*,
       (case when ProductId <> 1111
             then count(*) filter (where ProductId = 1111) over (order by <ordering col>)
        end) as box_num
from t;

这将统计到每一行的1111数。

编辑:

在SQL Server中,您将使用SUM(CASE)

select t.*,
       (case when ProductId <> 1111
             then sum(case when ProductId = 1111 then 1 else 0 end) over (order by <ordering col>)
        end) as box_num
from t;

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将新列和对应的行特定值添加到spark数据框?

来自分类Dev

如何将新的键和值添加到 R 中的现有哈希表?

来自分类Dev

如何将新的列族添加到现有的HBase表中?

来自分类Dev

如何将新列添加到由条件语句形成的表中?

来自分类Dev

如何将新列添加到 Identity RoleClaims 表中(asp net core)

来自分类Dev

如何将一个表中的值添加到另一表中的特定行?

来自分类Dev

如何将具有特定数据的新列添加到 R 数据框中

来自分类Dev

如何将子值添加到新数组?

来自分类Dev

如何将表中的值添加到另一个表中?

来自分类Dev

在Pyspark中,如何将值列表作为新列添加到现有数据框?

来自分类Dev

如何将表中的字段添加到SELECT的结果中以创建新视图?

来自分类Dev

使用SOAP和curl将列添加到表中。如何将访问令牌添加到xml?

来自分类Dev

如何将新列添加到Bootstrap网格?

来自分类Dev

根据列中的值将新列添加到临时表

来自分类Dev

如何将产品特定的属性列添加到sales_flat_order_item表?

来自分类Dev

如何将新行添加到MySql表中?

来自分类Dev

如何将列添加到BigQuery外部表

来自分类Dev

如何将数据行添加到特定列?

来自分类Dev

如何将值列表和新键添加到嵌套字典中?

来自分类Dev

如何将值添加到按随机值显示排名的列中?

来自分类Dev

如何将值添加到按随机值显示排名的列中?

来自分类Dev

如何将ID添加到表中的每个唯一值

来自分类Dev

如何将变量中的值添加到数据表

来自分类Dev

如何将特定索引处的值添加到dart中的空列表?

来自分类Dev

如何将多个列表框中的选定值添加到特定范围?

来自分类Dev

如何将列添加到Apache Pig中已存在的表中

来自分类Dev

如何将重复的值添加到ArrayList中?

来自分类Dev

如何将值添加到数组列表中

来自分类Dev

如何将重复的值添加到ArrayList中?

Related 相关文章

  1. 1

    如何将新列和对应的行特定值添加到spark数据框?

  2. 2

    如何将新的键和值添加到 R 中的现有哈希表?

  3. 3

    如何将新的列族添加到现有的HBase表中?

  4. 4

    如何将新列添加到由条件语句形成的表中?

  5. 5

    如何将新列添加到 Identity RoleClaims 表中(asp net core)

  6. 6

    如何将一个表中的值添加到另一表中的特定行?

  7. 7

    如何将具有特定数据的新列添加到 R 数据框中

  8. 8

    如何将子值添加到新数组?

  9. 9

    如何将表中的值添加到另一个表中?

  10. 10

    在Pyspark中,如何将值列表作为新列添加到现有数据框?

  11. 11

    如何将表中的字段添加到SELECT的结果中以创建新视图?

  12. 12

    使用SOAP和curl将列添加到表中。如何将访问令牌添加到xml?

  13. 13

    如何将新列添加到Bootstrap网格?

  14. 14

    根据列中的值将新列添加到临时表

  15. 15

    如何将产品特定的属性列添加到sales_flat_order_item表?

  16. 16

    如何将新行添加到MySql表中?

  17. 17

    如何将列添加到BigQuery外部表

  18. 18

    如何将数据行添加到特定列?

  19. 19

    如何将值列表和新键添加到嵌套字典中?

  20. 20

    如何将值添加到按随机值显示排名的列中?

  21. 21

    如何将值添加到按随机值显示排名的列中?

  22. 22

    如何将ID添加到表中的每个唯一值

  23. 23

    如何将变量中的值添加到数据表

  24. 24

    如何将特定索引处的值添加到dart中的空列表?

  25. 25

    如何将多个列表框中的选定值添加到特定范围?

  26. 26

    如何将列添加到Apache Pig中已存在的表中

  27. 27

    如何将重复的值添加到ArrayList中?

  28. 28

    如何将值添加到数组列表中

  29. 29

    如何将重复的值添加到ArrayList中?

热门标签

归档