各位,不好意思,有个算法,数据库里面的字段如下:表一为库存表,name为图书编号, nb为数量,
表二为售出表,name为图书编号,nb为售出数量!
现须统计出库存减掉售出的还剩多少?表一(库存表)id       name      nb 2000     bo1      1000
2000     bo2      2000
2001     bo3      3000
-        -        -
-        -        -
-        -        -
表二(售出表)id       name      nb 2000     bo1      500
2001     bo2      600
 
大家帮忙想一下了???

解决方案 »

  1.   

    以对表一&表二进行sum操作再减不就行啦?
      

  2.   

    SELECT TABLE1.NAME, SUM(TABLE1.NB - TABLE2.NB) FROM TABLE1 LEFT JOIN TABLE2 ON TABLE1.ID = TABLE2.ID GROUP BY TABLE1.ID
      

  3.   

    SELECT TABLE1.ID, TABLE1.NAME, SUM(TABLE1.NB - TABLE2.NB) FROM TABLE1 LEFT JOIN TABLE2 ON TABLE1.ID = TABLE2.ID GROUP BY TABLE1.ID, TABLE1.NAME
      

  4.   

    SELECT rf.nb, pubs.nb, sum(rf.nb - pubs.nb) from rf left join pubs 
    where id='" & t1.text" & "'
    这样一改,又不行了,我想通过一个值来传递这个id???
      

  5.   

    SELECT TABLE1.ID, TABLE1.NAME, SUM(TABLE1.NB - TABLE2.NB) FROM TABLE1 LEFT JOIN TABLE2 ON TABLE1.ID = TABLE2.ID where TABLE1.ID='" & t1.text" & "'
     GROUP BY TABLE1.ID, TABLE1.NAME我调试过OK
      

  6.   

    更正如下:(tid为测试是总类或分类,先不管)
    表rf为库存表,nb为产品编号,pnb为入库存数量。
    表pubs为发货表,nb为产品编号,pnb为出货数量。
    现想用入库数量,减去出货数量,计算出库存还剩多少?
    ---------------------------------------------
    tid      nb           pnb
    0       rf2000        
    1       rf2000       1000
    1       rf2000       2000
    0       rf2001       
    1       rf2001       2200
    1       rf2001       3200
    .        .            .
    .        .            .
      
            表rf
    ----------------------------------tid      nb           pnb
    0       rf2000        
    1       rf2000       1000
    1       rf2000       2000
    0       rf2001       
    1       rf2001       2200
    1       rf2001       3200
    .        .            .
    .        .            .        表pubs
    ---------------------------
      

  7.   

    我晕,居然用程序来算,用SQL语句能搞定的,一定不要用程序来算,再复杂的SQL语句也比你用程序算效率高的多!!!