因为最近要做个库存管理,在做月结存时,遇到困难.请高手指导!!三表结构一样:入库明细表(ruku),出库明细表(chuku),结存表(stocks).
ruku (id,num)//对应 物品id,入库数量
chuku(id,num)//对应 物品id,入库数量
stocks(id,num)//对应 物品id,入库数量
表中数据如下:
结存表 stocks :
id num
1 100
3 500
4 800入库表 ruku :
id num
1 100
1 80
2 800
5 200
2 105出库表 chuku:
id num
2 100
3 100
3 200
我做只出了当月结存统计表,但想把结存后的数据插入到 结存表(stocks)的新列中,
select id,sum(stock_opening) as 期初,sum(stock_in) as 入库量,sum(stock_out) as 出库量, sum(stock_closeing) as 结存量
from(
select id,num as stock_opening,0 as stock_in,0 as stock_out,num as stock_closeing from stock
union all
select id,0 as stock_opening,num as stock_in,0 as stock_out,num as stock_closeing from ruku
union all
select id,0 as stock_opening,0 as stock_in,num as stock_out,-num as stock_closeing from chuku
) as a
group by id运行结果如下:id 期初 入库量 出库量 结存量
1 100 180 0 280
2 0 905 100 805
3 500 0 300 200
4 800 0 0 800
5 0 200 0 200
现在希望在 结存表(stocks)的新列中,插入 "结存量" 这一列结果.使得最终结果如下:
结存表 stocks :
id num new_col
1 100 280
3 500 200
4 800 800
2 805
5 200对我的困难点是, 在新列new_col中插入数据时,要对应相应的ID,
结存表 stocks中原有的id,可以更新数据,如果没有的,则要添加id和结存量(即上面的最后两条).
在些不知道怎么加以判断,请高手指教!!谢谢!分不多.不好意思!
ruku (id,num)//对应 物品id,入库数量
chuku(id,num)//对应 物品id,入库数量
stocks(id,num)//对应 物品id,入库数量
表中数据如下:
结存表 stocks :
id num
1 100
3 500
4 800入库表 ruku :
id num
1 100
1 80
2 800
5 200
2 105出库表 chuku:
id num
2 100
3 100
3 200
我做只出了当月结存统计表,但想把结存后的数据插入到 结存表(stocks)的新列中,
select id,sum(stock_opening) as 期初,sum(stock_in) as 入库量,sum(stock_out) as 出库量, sum(stock_closeing) as 结存量
from(
select id,num as stock_opening,0 as stock_in,0 as stock_out,num as stock_closeing from stock
union all
select id,0 as stock_opening,num as stock_in,0 as stock_out,num as stock_closeing from ruku
union all
select id,0 as stock_opening,0 as stock_in,num as stock_out,-num as stock_closeing from chuku
) as a
group by id运行结果如下:id 期初 入库量 出库量 结存量
1 100 180 0 280
2 0 905 100 805
3 500 0 300 200
4 800 0 0 800
5 0 200 0 200
现在希望在 结存表(stocks)的新列中,插入 "结存量" 这一列结果.使得最终结果如下:
结存表 stocks :
id num new_col
1 100 280
3 500 200
4 800 800
2 805
5 200对我的困难点是, 在新列new_col中插入数据时,要对应相应的ID,
结存表 stocks中原有的id,可以更新数据,如果没有的,则要添加id和结存量(即上面的最后两条).
在些不知道怎么加以判断,请高手指教!!谢谢!分不多.不好意思!
解决方案 »
- and和or一起怎么用
- mysql获取表最后一条记录
- 哪位能帮我看看下面,从维基百科下载的sql文件,为什么在windows下导入全是乱码,我试着改了所有的字符集都不行,但是在linux下面就可以,求解?
- mysql对日期函数的操作,实现周期性计划安排 急!急!急!急!急急!路过的前辈帮忙看看啊
- ibdata1如何打开,innodb的相关表信息如何查出类似于mysiam引擎中.MYI文件中的信息
- 查找重复记录的效率问题,着急!!!!!!!!!!!!!!!!!!
- 求九百万行数据表优化
- mysql如何并发访问?
- MYSQL连接问题
- 请高手指点一下mysql连接问题。多谢了!!
- 求助!访问mysql记录的问题
- 请详解为什么左表有2条,左连接后变成3条?
'截至2010-04-25 09:06:29 用户结帖率0.00%当您的问题得到解答后请及时结贴.
http://topic.csdn.net/u/20090501/15/7548d251-aec2-4975-a9bf-ca09a5551ba5.html