insert t_tj
Select convert(char(6),lldate,112),sum(llmoney) from t_ll
where llbm = '生产部'
group by convert(char(6),lldate,112)

解决方案 »

  1.   

    create procedure test @llbm varchar(10)
    as
    insert t_tj
    Select convert(char(6),lldate,112),sum(llmoney) from t_ll
    where llbm = @llbm
    group by convert(char(6),lldate,112)
    go调用:
    exec test '生产部'
      

  2.   

    t_tj表有必要吗?只是一个查询结果而已。
      

  3.   

    Select convert(char(7),lldate,112) 时间,sum(llmoney) llmoney from t_ll
    where llbm = '生产部'
    group by convert(char(7),lldate,112)
      

  4.   

    Select convert(char(7),lldate,120) 时间,sum(llmoney) llmoney from t_ll
    where llbm = '生产部'
    group by convert(char(7),lldate,120)
      

  5.   

    insert t_tj
    select convert(char(7),lldate,120) 时间,sum(llmoney) llmoney into 新表 from t_ll
    where llbm = '生产部'
    group by convert(char(7),lldate,120)
      

  6.   

    create procedure pr_name
    as
    insert t_tj
    select left(convert(char(10),lldate,102),7)  ,sum(llmoney)
    from t_ll
    where llbm = '生产部'
    group by left(convert(char(10),lldate,102),7)
    go
      

  7.   

    得到的时间是YYYY-MM  怎么把他改成YYYY.MM ?
      

  8.   

    insert t_tj
    select replace(convert(char(7),lldate,120),'-','.') 时间,sum(llmoney) llmoney into 新表 from t_ll
    where llbm = '生产部'
    group by replace(convert(char(7),lldate,120),'-','.')
      

  9.   

    存储过程要带上3个变量
    @fdate     '2003.01'
    @tdate     '2003.05'
    @llbm      '生产部'执行后 t_tj 应该是
    2003.01   200
    2003.02   400
    2003.03   0
    2003.04   0
    2003.05   500我刚开始那个执行后的数据输入错了 因该是这个  各位大侠怎么做?
      

  10.   

    @fdate 从某年某月
    @tdate 至某年某月
      

  11.   

    create procedure test @fdate char(6),@tdate char(6),@llbm varchar(10)
    as
    insert t_tj
    Select convert(char(6),lldate,112),sum(llmoney) from t_ll
    where llbm = @llbm and convert(char(6),lldate,112) between @fdate and @tdate
    group by convert(char(6),lldate,112)
    go调用:
    exec test '200301','200305','生产部'
      

  12.   

    create procedure test
    @fdate char(6),@tdate char(6),@llbm varchar(10)
    asSelect replace(convert(char(7),a.[date],120),'-','.') 时间,sum(数量) 合计 from (
    select dateadd(month,id,@fdate+'.01') [date] from (select (select count(*) from sysobjects where id<a.id) [id] from sysobjects) tem where datediff(month,dateadd(month,id,@fdate+'.01'),@tdate+'.01')>=0) a
    left join 
    (
    select * from t_ll where llbm = @llbm and
     cast(convert(char(6),lldate,112)+'01' as datetime) between @fdate and @tdate
    ) b on datediff(month,a.[date],b.lldate)=0
    group by replace(convert(char(7),a.[date],120),'-','.')
    go调用:
    exec test '200301','200305','生产部'