ITPub博客

首页 > IT职业 > IT生活 > SQL Server循环不连续的日期时间

SQL Server循环不连续的日期时间

IT生活 作者:boss_ch 时间:2021-09-09 09:44:59 0 删除 编辑

虽然没有想到很理想的方法,下面的方法也许能暂时帮得上您的忙。

您可以先创建一个临时表或表变量来存储这些不连续的日期,为了让您更新清晰思路,得需引用一些例子和一些代码,就以http://www.cnblogs.com/insus/articles/1775510.html这个表,需要取出用户最近10次登录系统的时间。用户登录系统的时间肯定不是连续的。

下面步骤就是实现这个功能,定义一个表变量(一定要定义一个字段ID,这个字段数据类型为INT,是IDENTITY):

DECLARE @VariableTable AS TABLE (ID INT IDENTITY,LoginTime DATETIME)

 

取出用户最近10登录系统的时间插入这个表变量中。

INSERT INTO @VariableTable SELECT TOP 10 [LoginTime] FROM [dbo].[LoginLog] WHERE [UsersId] = 2 ORDER BY [LoginTime] DESC 

 

最后,我们就可以对这些不连续的日期进行循环了:

图片描述

DECLARE @i INT = 1, @t DATETIME
WHILE @i BEGIN
    SELECT @t = [LoginTime] FROM @VariableTable WHERE [ID] = @i 
    
    --这里就可以进行日期循环作相应的操作
        
    SET @i = @i + 1
END图片描述

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/97/viewspace-2806838/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-02-22

  • 博文量
    83
  • 访问量
    465