sql获取用户连接签到的时间

以下是查询的sql:

drop table  if  exists   #t
create table #t
(keyId int identity, actionDate datetime)
insert into #t(actionDate) select distinct InputDate from   Customer_main_PointRecord  where [OrderType]='Signin'and datediff(day,GETDATE(),InputDate)<0   and CMPAccount='10731'  and Inputor='12001'
 order BY InputDate desc
---采用遍历的方式生成用户连续签到的天数 start
declare @i int , @imax int , @startDate datetime
  set @i = 1
select @imax = max(keyId), @startDate = max(actionDate) from #t

while @i < @imax
begin
set @startDate = dateadd(day, -1, @startDate)
set @i = @i + 1

if not exists(
select null from #t where keyId =@i and actionDate =@startDate
)
begin
set @i = @i - 1
break;
                    end
                    end

if @imax is null
begin
set @i = 0
end

select convert(varchar(20), @i) signinday

 -- - 采用遍历的方式生成用户连续签到的天数 end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值