首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

求大侠们SQL语句解决思路

2012-04-12 
求大侠们SQL语句现在有一张表订单编号 订单数量订单时间物品编号交货时间A00001502011-11-02W0012011-12-0

求大侠们SQL语句
现在有一张表
订单编号 订单数量 订单时间 物品编号 交货时间
 A00001 50 2011-11-02 W001 2011-12-02
 A00001 60 2011-12-02 W001 2011-12-07
 A00001 70 2012-01-02 W002 2012-02-04
 A00002 80 2011-12-02 W002 2011-12-02
 A00003 90 2011-12-02 W002 2011-12-02

要求:如果(订单编号,物品编号)都相同的话 那么这个两项相加起来。
订单编号 订单数量 物品编号  
 A00001 130 W001
 A00001 70 W002  
 A00002 80 W002
 A00003 90 W002

[解决办法]

SQL code
declare @表 table (订单编号 varchar(6),订单数量 int,订单时间 datetime,物品编号 varchar(4),交货时间 datetime)insert into @表select 'A00001',50,'2011-11-02','W001','2011-12-02' union allselect 'A00001',60,'2011-12-02','W001','2011-12-07' union allselect 'A00001',70,'2012-01-02','W002','2012-02-04' union allselect 'A00002',80,'2011-12-02','W002','2011-12-02' union allselect 'A00003',90,'2011-12-02','W002','2011-12-02'select 订单编号,物品编号,订单数量=sum(订单数量) from @表 group by 订单编号,物品编号/*订单编号   物品编号 订单数量------ ---- -----------A00001 W001 110A00001 W002 70A00002 W002 80A00003 W002 90*/ 

热点排行