当前位置:首页 » 多媒体相关

大家救救我,帮我看看


物资:品名代号,类别  
  入库表:品名代号,合计金额,日期  
  进出表:品名代号,合计金额,日期  
  库存表:品名代号,收入01...收入12(对应一年12个月),库存01...库存12,年份。  
   
  现在要根据上面的表,做个查询,并插入到库存表中  
  查询是将某项产品的本月收入(合计金额)加起来,将结果更新到收入**列(本月收入),并将结果加上上月库存,将这个和更新到库存**列(本月库存)  
   
  我现在写的语句老是有问题,在查询分析器中报错  
   
  服务器:   消息   170,级别   15,状态   1,行   7  
  第   7   行:   品名代号   附近有语法错误。  
   
   
  语句是:  
  update   金额汇总   set   收入数08   =   收入数,   库存数08   =   库存07   +收入数   -   发出数,   发出数08   =   发出数    
  from   (select   isnull(sum(b.合计金额),   0)     收入数,   (select   isnull(sum(c.合计金额),   0)   发出数,   a.品名代号   from   物资   a    
  left   join   (select   日期,品名代号,合计金额   from   入库明细   where   month(日期)   =     month(getdate())    
  union   all   select   日期,品名代号,合计金额   from   一进一出   where   month(日期)   =     month(getdate()))   b   on   a.品名代号   =   b.品名代号    
  left   join   (select   日期,品名代号,领料金额   from   出库明细   where   month(日期)   =     month(getdate())    
  union   all   select   日期,品名代号,合计金额   from   一进一出   where   month(日期)   =     month(getdate()))   c   on   a.品名代号   =   c.品名代号   group   by   a.品名代号)   d    
  where   金额汇总.品名代号   =   d.品名代号

推荐阅读

  • TD-SCDMA进入最后试商用测试 测试规格升级 [详细内容]
  • 3K之内全搞定 佳能IXUS60套装促销 [详细内容]
  • 还有比我厉害吗?蓝魔 RM100降200 [详细内容]
  • 中国3G进入倒计时 TD-SCDMA高调亮相通信展 [详细内容]
  • 发现小6的新bug [详细内容]
  • 爆降千元?佳能“无线”DC送打印机 [详细内容]
  • 对抗内部网络威胁 美国8e6进入中国发布新品 [详细内容]
  • 网友回答:
    网友:pengdali

    update   金额汇总   set   收入数08   =   收入数,   库存数08   =   库存07   +收入数   -   发出数,   发出数08   =   发出数    
      from   (select   isnull(sum(b.合计金额),   0)     收入数,   isnull(sum(c.合计金额),   0)   发出数,   a.品名代号   from   物资   a    
      left   join   (select   日期,品名代号,合计金额   from   入库明细   where   month(日期)   =     month(getdate())    
      union   all   select   日期,品名代号,合计金额   from   一进一出   where   month(日期)   =     month(getdate()))   b   on   a.品名代号   =   b.品名代号    
      left   join   (select   日期,品名代号,领料金额   from   出库明细   where   month(日期)   =     month(getdate())    
      union   all   select   日期,品名代号,合计金额   from   一进一出   where   month(日期)   =     month(getdate()))   c   on   a.品名代号   =   c.品名代号   group   by   a.品名代号)   d    
      where   金额汇总.品名代号   =   d.品名代号

    网友:tj_dns

    update   金额汇总   set   收入数08   =   收入数,   库存数08   =   库存07   +收入数   -   发出数,   发出数08   =   发出数    
      from   (select   isnull(sum(b.合计金额),   0)     收入数,   (select   isnull(sum(c.合计金额),   0)   发出数,   a.品名代号   from   物资   a    
      left   join   (select   日期,品名代号,合计金额   from   入库明细   where   month(日期)   =     month(getdate())    
      union   all   select   日期,品名代号,合计金额   from   一进一出   where   month(日期)   =     month(getdate()))   b   on   a.品名代号   =   b.品名代号    
      left   join   (select   日期,品名代号,领料金额   from   出库明细   where   month(日期)   =     month(getdate())    
      union   all   select   日期,品名代号,合计金额   from   一进一出   where   month(日期)   =     month(getdate()))   c   on   a.品名代号   =   c.品名代号   group   by   a.品名代号)   d,     金额汇总   e  
      where   e.品名代号   =   d.品名代号  
       
       
      愉快的登山者  
       
                    ⊙  
      ◢◣◢◣◢◣  
     

    .

    讨论区

    Login