请问如何汇总库存量?
现有各个仓库货品库存表fkc.db
货名名称 数量 分仓库
电视机 120 仓库1
空调 50 仓库1
电脑 10 仓库1
手机 80 仓库2
电视机 40 仓库2
空调 20 仓库3
电视机 10 仓库3以上如何汇总成如下表
货名名称 仓库1数量 仓库2数量 仓库3数量 合计
电视机 120 40 10 150
空调 50 0 20 70
电脑 10 0 0 10
手机 0 80 0 80
现有各个仓库货品库存表fkc.db
货名名称 数量 分仓库
电视机 120 仓库1
空调 50 仓库1
电脑 10 仓库1
手机 80 仓库2
电视机 40 仓库2
空调 20 仓库3
电视机 10 仓库3以上如何汇总成如下表
货名名称 仓库1数量 仓库2数量 仓库3数量 合计
电视机 120 40 10 150
空调 50 0 20 70
电脑 10 0 0 10
手机 0 80 0 80
http://expert.csdn.net/Expert/TopicView1.asp?id=1015421
select 货名名称,(select sum(数量) from fkc as fkc1 where fkc.货名名称=fkc1.货名名称 and fkc1.分仓库="仓库1") as 仓库1数量
,(select sum(数量) from fkc as fkc1 where fkc.货名名称=fkc1.货名名称 and fkc1.分仓库="仓库2") as 仓库2数量
,(select sum(数量) from fkc as fkc1 where fkc.货名名称=fkc1.货名名称 and fkc1.分仓库="仓库3") as 仓库3数量
,select sum(数量) from fkc as fkc1 where fkc.货名名称=fkc1.货名名称) as 合计
from fkc group by 货名名称
我的真实表是
fkc.db
pmgk(货名名称) kcl(库存量) ck(仓库名称)
空调 50 仓库1
电脑 10 仓库1
手机 80 仓库2
电视机 40 仓库2
空调 20 仓库3
电视机 10 仓库3
以上如何汇总成如下表
货名名称 仓库1数量 仓库2数量 仓库3数量 合计
电视机 120 40 10 150
空调 50 0 20 70
电脑 10 0 0 10
手机 0 80 0 80
谢谢各位!
http://expert.csdn.net/Expert/topic/1529/1529397.xml?temp=.6069757
参照大力说的做,我就是用他的方法解决问题的。
可以写成存储过程,用游标算出select语句,然后Exec(@sql)
游标只要
select distinct 分仓库 from table
循环游标,仓库就搞定,然后加上 select ....from 就出来了
现有一表。fkc.db
**************************
fkc.db
pmgk(货名名称) kcl(库存量) ck(仓库名称)
空调 50 仓库1
电脑 10 仓库1
手机 80 仓库2
电视机 40 仓库2
空调 20 仓库3
电视机 10 仓库3
用了你的GetMatrixDataSet(query1,'pmgk','ck',kcl) 出错,
请问如何运用你的GetMatrixDataSet汇总成如下表,请不吝赐教!
货名名称 仓库1 仓库2 仓库3 合计
电视机 120 40 10 150
空调 50 0 20 70
电脑 10 0 0 10
手机 0 80 0 80
***********************************
我的程序只支持SQL SERVER,对不起。
PARADOX中没有CASE语句
(select 数量 from TableName
where 货名名称 = a.货名名称 and 分仓库 = 仓库1) as 仓库1数量,
(select 数量 from TableName
where 货名名称 = a.货名名称 and 分仓库 = 仓库2) as 仓库1数量,
(select 数量 from TableName
where 货名名称 = a.货名名称 and 分仓库 = 仓库3) as 仓库3数量
from TableName a
此sql语句,执行时没有显示数据?假如分仓库名称是不确定的,又如何呢?
不过可以使用TDecisionCube就可以实现了。但我还是想sql怎么写。
第一步找出仓库的列表,
Select distinct ck from fkc;
写到列表中(List或其他)
第二步找出pmgk的列表,写到列表中,
然后两个循环,表的数据不就出来了吗?
或者用GroupBy后缀,动态的建表,也可以求的吧不过我的方法都很笨:)