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

一个sql语句,关于分类汇总的

2012-12-14 
求助一个sql语句,关于分类汇总的现有库存表如下仓库 产品编码 数量10011020013300113100210200233300222..

求助一个sql语句,关于分类汇总的
现有库存表如下

仓库 产品编码 数量
1   001     10
2   001     3
3   001     13
1   002     10
2   002     33
3   002     22
.....

现在要求如下

汇总出每种产品的数量,跟仓库无关了

类似下面的结果
产品编码   汇总数量
001       55  
002       65
.....
用sql查出来,谢谢了
小弟我对于sql查询不数量
[最优解释]


--创建数据开始
if(object_id('a') is not null) drop table a
go
create table a
(
[仓库] int,
[产品编码] varchar(20),
[数量] int
)
go
insert into a 
select 1,'001',10 union all
select 2,'001',3 union all
select 3,'001',13 union all
select 1,'002',10 union all
select 2,'002',33 union all
select 3,'002',22
go
--创建数据结束
--语句
select case grouping([产品编码])when 1 then '合计' else [产品编码] end as [产品编码],sum([数量]) as [汇总数量]
from a
group by [产品编码] with rollup
/*
产品编码                 汇总数量
-------------------- -----------
001                  26
002                  65
合计                 91

(3 行受影响)
*/

[其他解释]
最简单的方法,根据你的需要再做修改
SELECT  产品编码 ,
        SUM(数量) 数量
FROM    TB
GROUP BY 产品编码

[其他解释]


if(object_id('a') is not null) drop table a
go
create table a
(
[仓库] int,
[产品编码] varchar(20),
[数量] int
)
go
insert into a 
select 1,'001',10 union all
select 2,'001',3 union all
select 3,'001',13 union all
select 1,'002',10 union all
select 2,'002',33 union all
select 3,'002',22
go

SELECT 
产品编码,
(SELECT SUM(数量) FROM a WHERE 产品编码 = d.产品编码) 数量 
FROM a d
GROUP BY 产品编码

---测试结果:
产品编码                 数量
-------------------- -----------
001                  26
002                  65

(2 行受影响)



[其他解释]
SELECT cInvCode ,sum(iQuantity)
  FROM CurrentStock group by cInvCode



好吧 试验了一下 已经出来,还是要谢谢大家
[其他解释]
大家还有什么好的方法 写出来 我就开始送分了
[其他解释]
不抄我的能死么?

引用:
SQL code?



1234567891011121314151617181920212223242526272829303132333435

if(object_id('a') is not null) drop table a go create table a ( [仓库] int, [产品编码] varchar(20), [数量] int) go insert into……

热点排行