有4张表:(tsydmx,tszdmx,rkdmx,tsxx) 
1、图书预订明细表tsydmx(tsbh【图书编号】,ydsl【预订数量】) 
2、图书征订明细表tszdmx(tsbh【图书编号】,zds【征订数量】)
3、入库单明细表rkdmx(rkdjh【入库单据号】,tsbh【图书编号】,sl【数量】) 
4、图书信息表tsxx(tsbh【图书编号】,ISBN【ISBN】,bc【版次】,yc【印次】,tsmc【图书名称】)
现想查询以下内容:
图书编号 ISBN 版次 印次 图书名称 预定数量 征订数量 入库数量 出库数量

解决方案 »

  1.   


    ---出库表没看见啊。。
    select 
    d.tsbh,d.ISBN,d.bc,d.yc,d.tsms,sum(ydsl),sum(zds),sum(sl)
    from tsydmx a,tszdmx b,rkdmx c ,tsxx d 
    where a.tsbh=b.tsbh and b.tsbh=c.tshb and d.tshb=c.tshb
    group by d.tsbh,d.ISBN,d.bc,d.yc,d.tsms
      

  2.   

    出库数量不知道怎么算?
    select d.tsbh 图书编号, d.ISBN , d.bc 版次 ,d.yc 印次, d.tsmc 图书名称 ,
           a.ydsl 预定数量, b.zds 征订数量, c.s1 入库数量 
      from tsydmx a, tszdmx b, rkdmx c, tsxx d
     where d.tsbh = a.tsbh(+)
       and d.tsbh = b.tsbh(+)
       and d.tsbh = c.tsbh(+);
      

  3.   

    select d.tsbh 图书编号, d.ISBN , d.bc 版次 ,d.yc 印次, d.tsmc 图书名称 ,
           sum(a.ydsl) 预定数量, sum(b.zds) 征订数量, sum(c.s1) 入库数量 
      from tsydmx a, tszdmx b, rkdmx c, tsxx d
     where d.tsbh = a.tsbh(+)
       and d.tsbh = b.tsbh(+)
       and d.tsbh = c.tsbh(+)
       group by d.tsbh,d.ISBN,d.bc,d.yc,d.tsms;
      

  4.   

    出库单明细表ckdmx(tsbh【图书编号】,sl【数量】
      

  5.   


    ---你又没说具体。。那就是左连接了
    select 
    d.tsbh,d.ISBN,d.bc,d.yc,d.tsms,sum(ydsl),sum(zds),sum(c.sl),sum(e.sl)
    from tsydmx a,tszdmx b,rkdmx c ,tsxx d ,ckdmx e
    where 
    d.tsbh=e.tsbh(+) 
    and d.tsbh=a.tshb(+) 
    and d.tshb=b.tshb(+)
    and d.tshb=c.tshb(+)
    group by d.tsbh,d.ISBN,d.bc,d.yc,d.tsms
      

  6.   

    这样查询的数据数共有63353条,也就是tsxx表中的记录数,但实际上图书预订明细(tsydmx)表中只有19条记录
    整个流程是这样的:先预订图书,再征订图书,再是图书入库,图书出库
      

  7.   

       恩!现在应该没问题了!
       wangzairong ,你再执行下试试!
      

  8.   

    这样查询的数据数共有63353条,也就是tsxx表中的记录数,但实际上图书预订明细(tsydmx)表中只有19条记录 
    整个流程是这样的:先预订图书,再征订图书,再是图书入库,图书出库