多表连接统计问题(100分)

  • 主题发起人 主题发起人 angelglad
  • 开始时间 开始时间
A

angelglad

Unregistered / Unconfirmed
GUEST, unregistred user!
高手请赐教:
我要根据入库表、出库表、转入表、转出表做产品入库报表,报表格式如下:
产品项目 入库数量 出库数量 转入数量 转出数量 结存
类别 规格 a-b+c-d
从入库表中检索所有的产品项目,合计其入库数量a,并要找出对应的项目的出库数量b、
转入数量c、转出数量d,判断对应的b、c、d是否为空,为空作‘零’计。两个表的这种
要求用左(如:FROM 入库表 LEFT JOIN 出库表)、右连接可以实现,但我不知道4、5
个表的这种连接怎么比较好的实现,请帮忙!
 
请说得更详细些,否则这个问题只有你才能解决
 
你可以写成一个sql语句啊,在语句中就把各个表连接好。
 
用SQL UNION呀
 
select * from(
select * from(select a,b,c from table1 tb1)
left join (select a,d from table2 tb2)
on tb1.a=tb2.a) Tb_1
left join (select b,e,f from Table3 tb3)
on Tb_1.b = tb3.b
以上是三个表的连接,
每增加一个表时,将当前已连接表当作一个表处理,设置一别名(比如上面的Tb_1),
 
首先你要理顺多表之间的连接关系,然后由里到外层级连接。比如 ((a left join b) right
join (c left join b)) out join d
 
再加50分我给你搞定,EMAIL我相关的表结构和相关的字段计算关系.casbrank@sina.com
 
谢谢各位,我已采用了sundart和潜龙入海的方法,将两个表连接后组成一个表再和第三个
表连接,依次类推。现在还有个问题即当我的出库表、转入表、转出表中没有和入库表对应
的项目时,对应的值为null,怎么可以把它转为零0,进行结存计算呢?
 
多人接受答案了。
 
后退
顶部