我有 YYYYMM 的 int 值。我想: 1. 将其转换为日期时间 2. 添加一天 DATEADD(Day, +1, @date) 3. 将其转换回 int
最简单的方法是什么?
我有 YYYYMM 的 int 值。我想: 1. 将其转换为日期时间 2. 添加一天 DATEADD(Day, +1, @date) 3. 将其转换回 int
最简单的方法是什么?
如果您的初始 int 是 201310(2013 年 10 月),那么我认为您想要的是:
select convert(datetime, rtrim(201310 * 100 + 1))
函数 RTRIM 是将 int 转换为字符串类型的技巧。
结果是这样的:
2013-10-01 00:00:00.000
如果您不想使用 RTRIM,以下命令将为您提供相同的结果:
select convert(datetime, convert(char, 201310 * 100 + 1))
这是一个很好的练习,我希望它对你有用……
declare @date date
declare @newDate date
set @date = convert(date, '20100101')
set @newdate = DateAdd(dd, 1, @Date)
select @date
select @newdate
select convert(int, convert(varchar, @newdate, 112)) -- this is your final conversion back to int