SQL中如何根据相同条件求和数量,并把数量更新到新列

如图A-H为原始发货数据,I-K为想要数据。想要在原始数据中,计算同天发货、同供应商、同目的地的重量、体积求和,如I哈J列,并能赋予一个合单号,这个合单号是随意的不重复标记,还是原始数据中随意一个订单号都行。

img

先说是什么数据库?以及数据库的版本?如果是支持开窗函数的数据库的话,这个就很好写

select 供应商,
       采购订单号,
       收货城市,
       发货日期,
       收货数,
       物料号,
       重量,
       体积,
       sum(重量) over (partition by 日期, 供应商, 收货城市) 合并重量,
       sum(体积) over (partition by 日期, 供应商, 收货城市) 合并体积,
       max(concat(日期, '-', 供应商, '-', 收货城市)) over (partition by 日期, 供应商, 收货城市) 合并单号
  from
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632