SQL Server中临时表与表变量 游标

临时表与表变量

http://blog.csdn.net/skyremember/article/details/3960687

 DECLARE   @WorkDays TABLE
   (
   workdaydate        nvarchar(200) NULL           --工作日日期                                                    
   )

while(@SDate<=@EDate)
     BEGIN   
        if(charindex(@SDate,@sql1+@sql2+@sql3+@sql4)>0)--存在此工作日
           BEGIN             
               insert into @WorkDays
           select (@SDate)           
            END      
        set @SDate=CONVERT(varchar(100), DATEADD(DAY,1,@SDate), 23)
     END

游标

 declare My_Cursor_EveryWorkDay cursor for
                 select count(userid) from #tempSource where cdate=@WorkDayDate and userid=@user
                   OPEN My_Cursor_EveryWorkDay --打开游标
             FETCH NEXT FROM My_Cursor_EveryWorkDay into  @num
          while(@@FETCH_STATUS = 0 )
                  BEGIN                
                        IF(@num=0)
                BEGIN               
                   insert into #tempSource
                    select
                    @user               userid        ,           --用户ID
                    u.depart              departid      ,                     --部门ID                    
                     0      chidao        ,               --迟到分钟数
                     0       zaotui  ,            --早退分钟数 
                     0        wtime ,                       --工作分钟数 
                     (select dbo.FUN_GetChuQinAndQueQin(u.itemid,@WorkDayDate,'QinJiaDays'))  QinJiaDays,        --请假天数
                     0 QinJiaHours,        --请假小时
                     0 ChuQin         ,                       --正常出勤  
                     (select dbo.FUN_GetChuQinAndQueQin(u.itemid,@WorkDayDate,'QueQin'))  QueQin,                        --缺勤   
                     @WorkDayDate cdate                       --考勤日期 
                     from
                    yj_users u
                   -- left join #tempSource temp on u.itemid=temp.userid
                    where
                      U.itemid=@user
                END
                  FETCH NEXT FROM My_Cursor_EveryWorkDay into  @num
                  END         
                      CLOSE My_Cursor_EveryWorkDay --关闭游标
                      DEALLOCATE My_Cursor_EveryWorkDay --释放游标

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值