sql问题:计算库存!(60分)

  • 主题发起人 主题发起人 lemonloveyan
  • 开始时间 开始时间
L

lemonloveyan

Unregistered / Unconfirmed
GUEST, unregistred user!
sql问题:
表:库房 :Table_KF.bh(库房编号),KF.mc(库房名称)
(没有初始化的商品数量,也不记录出入数量):
表:入库单主(从) :Table_RKDz.bh(入库单主单据编号)=Table_RKDc.bh(入库单从单据编号),Table_RKDz.rkdw(入库单主库房名称),Table_RKDC.SPbh(入库单从商品编号),Table_RKDC.SPmc(入库单从商品名称)
表:商品 :Table_SP.SPmc(入库单从商品名称,Table_SP.SPbh(入库单从商品编号)
还有 表:领料单主、从 :Table_LLDz,Table_LLDc(结构同入库单主、从)
暂时不考虑调拨单。
怎么动态计算每个库房每个商品库存数量
在线等待!
 
写存储过程,返回一个表

-----
http://www.8421.org
 
即使写存储过程也要有sql语句啊!何况我也不太懂写呢!
这为仁兄,帮个忙,好吗???
 
入库单主(从) 为什么没有库房编号,是没有写进来吗?
最好将完整的表结构贴出来,最好用脚本(DDL)的形式,正要便于大家试验。
 
sql问题:
表1:库房 table_KF
字段 table_KF.bh(库房编号);table_KF.mc(库房名称)
1 K1
2 K2
表2:商品 table_SP
字段table_SP.bh(商品编号),table_SP.mc(商品名称)
1 S1
2 S2
表3:入库单主 table_RKDZ
字段 Table_RKDz.bh(入库单主单据编号);Table_RKDz.KFbh(入库单主库房编号)
001 1
002 2
003 1
表4:入库单从 table_RKDC
字段 Table_RKDC.bh(入库单从单据编号);Table_RKDz.SPbh(入库单从商品编号);Table_RKDz.SPmc(入库单从商品名称);Table_RKDz.SPsl(

入库单从商品数量)
001 1 S1 50
001 2 S2 10
002 2 S2 100


表5:领料单主 table_LLDZ
字段 Table_LLDz.bh(领料单主单据编号);Table_LLDz.KFbh(领料单主库房编号)
表6:领料单从 table_LLDC
字段 Table_LLDC.bh(领料单从单据编号);Table_LLDz.SPbh(领料单从商品编号);Table_LLDz.SPmc(领料单从商品名称);Table_LLDz.SPsl
领料单从商品数量)
注: 表-库房 没有记录初始化库存和出入库数量记录(可以不考虑初始化库存,因为它是存在另外一个表(KFBH,KFMC,SPBH,SPMC,SL)里)
怎么动态计算每个库房每个商品库存数量???
 
你用的什么数据库?
字段名中可以有“.”吗?
 
可能是你理解错了。
点(.)前面是表名啊!
比如:表名是 table_rkdz;字段名 bh
那何在一起不是: table_rkdz.bh

那位仁兄帮个忙,后天小弟要交工了! Thank you very much!!!
(在线等待) qq:33461596
 
弄错了几个表名和字段:
表1:库房 table_KF
字段 table_KF.bh(库房编号);table_KF.mc(库房名称)
1 K1
2 K2
表2:商品 table_SP
字段table_SP.bh(商品编号),table_SP.mc(商品名称)
1 S1
2 S2
表3:入库单主 table_RKDZ
字段 Table_RKDz.bh(入库单主单据编号);Table_RKDz.KFbh(入库单主库房编号)
001 1
002 2
003 1
表4:入库单从 table_RKDC
字段 Table_RKDC.bh(入库单从单据编号);Table_RKDc.SPbh(入库单从商品编号);Table_RKDc.SPmc(入库单从商品名称);Table_RKDc.SPsl(

入库单从商品数量)
001 1 S1 50
001 2 S2 10
002 2 S2 100


表5:领料单主 table_LLDZ
字段 Table_LLDz.bh(领料单主单据编号);Table_LLDz.KFbh(领料单主库房编号)
表6:领料单从 table_LLDC
字段 Table_LLDC.bh(领料单从单据编号);Table_LLDc.SPbh(领料单从商品编号);Table_LLDc.SPmc(领料单从商品名称);Table_LLDc.SPsl(领料单从商品数量)
注: 表-库房 没有记录初始化库存和出入库数量记录(可以不考虑初始化库存,因为它是存在另外一个表(KFBH,KFMC,SPBH,SPMC,SL)里)
怎么动态计算每个库房每个商品库存数量???
 
select Tmp.KFbh, table_KF.mc, Tmp.SPbh, table_SP.mc, sum(SPsl) as KCSL from
( select Table_RKDz.KFbh, Table_RKDc.SPbh, Table_RKDc.SPsl
from table_RKDz, table_RKDc where Table_RKDz.bh=Table_RKDc.bh
union all
select Table_LLDz.KFbh, Table_LLDc.SPbh, (-1)*Table_LLDc.SPsl as SPsl
from Table_LLDz, Table_LLDc where Table_LLDz.bh=Table_LLDc.bh
) as Tmp, table_KF, table_SP
where table_KF.KFbh=Tmp.KFbh and table_SP.SPbh=Tmp.SPbh
group by Tmp.KFbh, table_KF.mc, Tmp.SPbh, table_SP.mc;
 
谢谢各位了。我按照了westboy2000的做法,但提示说所列的字段没有被包含在索引中。
后来就加了group by,估计是这个问题。谢谢了!
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部