下面是SP源码,数据源在#Fee中,实现这个只需要一句话,看*号注释的那句话,最后效果看附图。

ALTER PROCEDURE [dbo].[Report_Loading_List]@Flag nvarchar(10),@Document_NO nvarchar(50)ASBEGIN
//同列相加的数据源create table #Fee(CNO nvarchar(50),name nvarchar(50),amount nvarchar(20))insert into #Fee(CNO,name,amount)select C_ID_STR,TUC_SHIPPING_FEE.SUBJECT,TUC_SHIPPING_FEE.MONEYfrom TUC_SHIPPING_FEE where C_ID_STR in (select C_ID_STR from TUC_Container_Header where Document_NO=@Document_NO)
//源码create table #Container(C_ID_STR varchar(50),whse char(4),Ship_NO varchar(50),Container_Type varchar(50),Total_CUFT float,Vessel_NO varchar(50),Shipping_Date datetime,Closing_Date datetime,Closing_Port  nvarchar(50),ETA datetime,Destination nvarchar(100),Loading_Place nvarchar(100),QC_By nvarchar(50),Vessel_Name nvarchar(50),Carrier nvarchar(50),Vendor_NO nvarchar(50),Vendor_Name nvarchar(50),QTY_Shipped float,Item_NO varchar(30),Item_Name nvarchar(50),weight float,CUFT float,Carton_Size nvarchar(50),Gross_Weight float,Net_Weight float,Carton_NO nvarchar(50),Length float,Width float,Height float,Detail_Vendor_NO nvarchar(50),Detail_Vendor_Name nvarchar(50),Price float,Amount float,PONO nvarchar(50),Fee nvarchar(500),Vessel_Company nvarchar(20),shipping_vendor nvarchar(30),Total_Fee float)

if @Flag='1'insert into #Container(C_ID_STR,whse,Ship_NO ,Container_Type ,Total_CUFT,Vessel_NO,Shipping_Date,Closing_Date,Closing_Port,ETA,Destination,Loading_Place,QC_By,Vessel_Name,Carrier,Vendor_NO,Vendor_Name,QTY_Shipped,Item_NO,Item_Name,weight,CUFT,Carton_Size,Gross_Weight,Net_Weight,Carton_NO,Length,Width,Height,Detail_Vendor_NO,Price,Amount,PONO,shipping_vendor,Fee,Total_Fee)select H.C_ID_STR,isnull(H.whse,''),isnull(H.Ship_NO,''),isnull(H.Container_Type,''),isnull(H.Total_CUFT,0),isnull(H.Vessel_NO,''),isnull(H.Shipping_Date,''),isnull(H.Closing_Date,''),Closing_Port=(select closing_port from tuc_shipping_document where document_no=@Document_NO),isnull(H.ETA,'') ,Destination=isnull(H.Destination,''),isnull(H.Loading_Place,''),isnull(H.QC_By,''),isnull(H.Vessel_Name,''),isnull(H.Carrier,''),isnull(H.Vendor_NO,''),Vendor_Name=(select Vendor_Name from EX_VENDOR_INFO where Vendor_No=h.Vendor_NO),

isnull(D.QTY_Shipped,0),isnull(D.Item_NO,''),Item_Name=(select top 1 Descrip from EX_ITEM_INFO where Item_No=d.Item_NO),isnull(D.weight,0),isnull(D.CUFT,0),D.Carton_Size,isnull(D.Gross_Weight,0),isnull(D.Net_Weight,0) ,isnull(D.Carton_NO,''),isnull(D.Length,0),isnull(D.Width,0),isnull(D.Height,0),Detail_Vendor_NO=(select CUST_ID from TUC_PO_HEADER where PO_ID_STR=D.PO_NO),Price=isnull((select price from TUC_PO_DETAIL where PO_ID_STR=d.PO_NO and line_ID=d.PO_LINE_ID),0),Amount=isnull(D.QTY_Shipped,0)*isnull((select price from TUC_PO_DETAIL where PO_ID_STR=d.PO_NO and line_ID=d.PO_LINE_ID),0),PONO=pcd.ITEM_MEMO,shipping_vendor=vendor.Vendor_Name
//同列相加*************************************************************************************************
,Fee=(select top 1 stuff((select ',     '+ltrim(name+': '+amount) from #Fee where CNO=b.CNO for xml path('')),1,1,'') from #Fee b where b.CNO=H.C_ID_STR)
//*******************************************************************************************************
,Total_Fee=isnull((select sum(convert(float,amount)) from #Fee where CNO=H.C_ID_STR),0)

from TUC_Container_Header H inner join TUC_Container_Detail Don h.C_ID_STR = D.C_ID_STRleft join TUC_PC_DISTRIBUTEREQUEST_PO_LOG l on l.PO_ID_STR=D.PO_NO and l.PO_LINE_NUM=D.PO_LINE_ID and l.BRANCH<>l.VENDOR and l.ORIGNAL_QTY>0left join TUC_PC_DETAIL pcd on pcd.PC_ID_STR=l.PC_ID_STR and pcd.LINE_ID=l.PC_LINE_NUMleft join TUC_Container_Share_Vendor share on share.Shipping_Ref=H.C_ID_STRleft join EX_VENDOR_INFO vendor on vendor.Vendor_No=share.Shipping_Vendorwhere h.Document_NO=@Document_NO

select * from     #Container

数据源与结果呈现图:

转载于:https://www.cnblogs.com/hiflora/archive/2012/04/06/2434730.html

SQL:Store Produce同列数据相加相关推荐

  1. mysql数据库计算两列数据的和_在sql中对两列数据进行运算作为新的列操作

    如下所示: select a1,a2,a1+a2 a,a1*a2 b,a1*1.0/a2 c from bb_sb 把a表的a1,a2列相加作为新列a,把a1,a2相乘作为新列b,注意: 相除的时候得 ...

  2. SQL将一行多列数据合并成 一列

    由于最近在做项目的时候,要对数据库中一行很多列个数据进行求和,便在网上查了一下,首先要用到动态SQL语句,动态sql感觉就是类似于拼接sql字符串 动态语句基本语法 1 :普通SQL语句可以用exec ...

  3. python两列数据相加_pandas的两个DataFrame相加

    最近在使用Python的pandas库时,涉及到需要往一个DataFrame添加一些噪声,噪声可以使用numpy的随机函数完成.但是相加时出现了问题. 一.环境 windows 7 64bit Pyt ...

  4. SQL SERVER 用sql语句将一列数据拼接成一个字符串

    执行 SELECT userid FROM userinfo 得到 1 2 3 4 如果要得到 1,2,3,4 执行方案1 DECLARE @STR VARCHAR(8000) SELECT @STR ...

  5. mysql 数据相加_mysql,php_mysql查询将两列数值相加问题,mysql,php,sql - phpStudy

    mysql查询将两列数值相加问题 如图所示: 我希望加一个total_price列,值为price+price2的和,这个应该怎么写SQL: select * from ims_goods_1 whe ...

  6. HIVE/SQL 实现同一列数据累加和累乘

    一.累加 hive sql 实现同一列数据的累加,相信大家都会,这里就不过多解释了,贴一个例子结束: with base_data as (select 1 as fee, '20220101' as ...

  7. pandas使用apply函数和lambda函数、把所有行指定的数据列进行相加(use apply and lambda to add value in dataframe rows)

    pandas使用apply函数和lambda函数.把所有行指定的数据列进行相加(use apply and lambda to add value in dataframe rows) 目录

  8. Column store index 列数据如何匹配成行数据?

    SQL Server 2012引入了列存储索引,对每列的数据进行分组和存储,然后联接所有列以完成整个索引.这不同于传统索引,传统索引对每行的数据进行分组和存储,然后联接所有行以完成整个索引. 在访问基 ...

  9. sql 某列数据全部为0则不显示该列_数据产品经理养成记(五):汇总分析

    学会了如何查找数据后,接下来就要对数据进行分析处理,比如求和.平均值.加总等等.这些对数据的加工处理通过汇总函数来实现.汇总函数在之前的两篇文章中都有涉及,这里采用概念--案例--总结的方式,集中介绍 ...

最新文章

  1. php -- 读取大文件
  2. 汇编: dosbox命令
  3. CentOS6.5下通过yum仓库安装mysql
  4. 【IM】关于最小二乘法及约束的理解
  5. 融合升级谋定功能性-农业大健康·林裕豪:哲商对话从玉农业
  6. google 用新的tab打开网页
  7. 既然是青春,怎么能错过?唯一理由只缺1张免费票!
  8. ISA Server 2006速战速决实验指南(4)创建元素-内容类型、计划
  9. 《少年的你》惊现魅族手机,“心酸”回应:纯属意外 小破厂没钱植入
  10. MRC与ARC混合编程的编译器标记
  11. matlab分析电池特性,基于Matlab_Simulink的光伏电池特性仿真研究
  12. 梦笔记2022-2-10
  13. 抓包分析数据帧中IP数据包的一些关键字段【南邮网课例题】
  14. 2022天勤数据结构
  15. 零基础学平面设计要从哪入手
  16. 【暗时间】摘录 - 为什么你应该从现在开始就写博客
  17. 夜已深,为何身体没有困意!
  18. Docker拉取镜像报错error pulling image configuration
  19. 类似京东淘宝寄售转拍系统源码-拍卖系统源码-竞拍系统网站源码
  20. rt-thread物联网开发板mqtt实验

热门文章

  1. 《python 程序设计》读书笔记
  2. 阿里云elasticsearch试用套路
  3. 这项镜头贴膜技术背后,藏着让VR变轻巧的秘密
  4. ad电阻原理图_Arduino动手做(2)光敏电阻模块
  5. 树莓派中文输入法安装
  6. Centos7 安装VLC播放器
  7. STM32环境下AS5048A14位磁旋转编码器SPI通讯调试记录——我学到的东西、遇到的问题、解决的过程
  8. 一辈子不用考试?你可能是个假程序员
  9. shell脚本、awk、sed用法
  10. win11怎么看电脑显卡信息