本人遇到了一个棘手的问题,希望大家能帮帮我 ( 积分: 17 )

  • 主题发起人 主题发起人 channelxp
  • 开始时间 开始时间
C

channelxp

Unregistered / Unconfirmed
GUEST, unregistred user!
我现在有4张表,它们分别是材料入库单表,材料入库明细表,材料出库单表,材料出库明细表.单表跟明细表通过表单号联系(入库单号为InID,出库单号为OtID),单表中记录了材料的出入库日期,明细表中则记录了材料出入库的数量,现在我需要建一个视图,这个视图能让我通过一句select语句查询到某个时间段,某材料的出入库数量.基本情况就是这些,我遇到的问题就是建视图的时候不知道如何处理那时间,因为有两个时间,一个出库时间,一个入库时间,出库单表里有某个日子,表示这个时间有材料出库,但入库单表未必有这个时间,表示这个时间没有材料入库,我怎么也想不到如何同时这2个时间,而且既然是时间段,当然在材料数量上也要进行相加,感觉情况很复杂,请高手帮我理下思路,如果我的表述有什么不清楚,大家还可以继续提问
 
有些问题不是单纯程序或者系统可以解决的,需要实施的人员来配合。<br>建议入库单一定要有时间,这样才能进行库存方面的核算,如果实在无法确认入库时间,那么请客户谈谈他们业务方面的联系,以确定唯一性。
 
TO&nbsp;cancheung:<br>&nbsp;&nbsp;&nbsp;&nbsp;我的出入库单表就是用来记录时间的呀
 
CREATE&nbsp;VIEW&nbsp;出入库明细<br>AS<br>SELECT&nbsp;时间,物品,入库数量,0&nbsp;as&nbsp;出库数量&nbsp;from&nbsp;入库单表&nbsp;LEFT&nbsp;OUTER&nbsp;JOIN&nbsp;入库明细表&nbsp;ON&nbsp;入库单表.InID&nbsp;=&nbsp;入库明细表.InID<br>UNION<br>SELECT&nbsp;时间,物品,0&nbsp;as&nbsp;入库数量,&nbsp;出库数量&nbsp;from&nbsp;出库单表&nbsp;LEFT&nbsp;OUTER&nbsp;JOIN&nbsp;出库明细表&nbsp;ON&nbsp;出库单表.OtID&nbsp;=&nbsp;出库明细表.OtID<br><br>===============================================<br>select&nbsp;物品&nbsp;,sum(入库数量),sum(出库数量)&nbsp;from&nbsp;出入库明细&nbsp;where&nbsp;时间&nbsp;between&nbsp;开始时间&nbsp;and&nbsp;&nbsp;结束时间<br>===============================================<br>select&nbsp;时间,物品&nbsp;,sum(入库数量),sum(出库数量)&nbsp;from&nbsp;出入库明细
 
忘了还有一张表,负责记录材料的编号,价格,单位等等,这样表的资料也要显示出来,这样表与出入库单号通过材料ID联系
 
还有一张表是材料类型表,负责记录材料的类型,这样表与上面的表通过类型ID联系
 
也就是说表之间的关系是:&nbsp;&nbsp;类型表——材料表——单表——明细表
 
to&nbsp;cjion:<br>&nbsp;&nbsp;&nbsp;&nbsp;时间那里,要分入库时间(InDate)和出库时间(OtDate)
 
555555555555,感动ING,问题解决了,本人在cjion的基础上作了修改,成功了,给分了,谢谢啊
 
to&nbsp;channelxp:<br>那就&nbsp;&nbsp;InDate&nbsp;as&nbsp;时间&nbsp;和&nbsp;OtDate&nbsp;as&nbsp;时间&nbsp;<br>===============================================================<br>CREATE&nbsp;VIEW&nbsp;出入库明细<br>AS<br>SELECT&nbsp;InDate&nbsp;as&nbsp;时间,物品,材料ID,入库数量,0&nbsp;as&nbsp;出库数量&nbsp;from&nbsp;入库单表&nbsp;LEFT&nbsp;OUTER&nbsp;JOIN&nbsp;入库明细表&nbsp;ON&nbsp;入库单表.InID&nbsp;=&nbsp;入库明细表.InID<br>UNION<br>SELECT&nbsp;OtDate&nbsp;as&nbsp;时间,物品,材料ID,0&nbsp;as&nbsp;入库数量,&nbsp;出库数量&nbsp;from&nbsp;出库单表&nbsp;LEFT&nbsp;OUTER&nbsp;JOIN&nbsp;出库明细表&nbsp;ON&nbsp;出库单表.OtID&nbsp;=&nbsp;出库明细表.OtID<br><br>===============================================<br>select&nbsp;物品&nbsp;,sum(入库数量),sum(出库数量)&nbsp;from&nbsp;出入库明细&nbsp;where&nbsp;时间&nbsp;between&nbsp;开始时间&nbsp;and&nbsp;&nbsp;结束时间<br>===============================================<br>select&nbsp;时间,物品&nbsp;,sum(入库数量),sum(出库数量)&nbsp;from&nbsp;出入库明细&nbsp;<br>=================================================<br>select&nbsp;*&nbsp;<br>From&nbsp;出入库明细&nbsp;LEFT&nbsp;OUTER&nbsp;JOIN&nbsp;材料表&nbsp;ON&nbsp;出入库明细.材料ID&nbsp;=&nbsp;材料表.材料ID&nbsp;<br>LEFT&nbsp;OUTER&nbsp;JOIN&nbsp;类型表&nbsp;ON&nbsp;材料表.类型ID=&nbsp;类型表.类型ID<br>==前面*号根据需要变动&nbsp;,后面为视图与其它表的关联
 

Similar threads

回复
0
查看
1K
不得闲
S
回复
0
查看
857
SUNSTONE的Delphi笔记
S
S
回复
0
查看
783
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
后退
顶部