sql server 的根据时间筛选往前推24个月怎么写

sql server 的根据时间筛选往前推24个月怎么写

我有一张表 tb1 里面有一个字段date 里面有(200101~210001)值

比如$MONTH='202001'

怎么写sql出

202001、 201912、 201911、 201910、 201909、 201908、 200907、 201906、 201905、 201904、 201903、 201902、 201901、 201812、 201811、 201810、 201809、 201808、 201807、 201806、 201805、 201804、 201803、 201802、 201801

FineReport 18720859069 发布于 2020-5-23 11:39
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
4
krystal033Lv7高级互助
发布于2020-5-23 13:02(编辑于 2020-5-23 13:06)
declare @begin datetime,@end datetime
set @begin=getdate()-24*30
set @end=getdate()
 
declare @months int
set @months=DATEDIFF(month,@begin,@end)
select convert(varchar(6),DATEADD(month,number,@begin) ,112) AS 月份
from master.dbo.spt_values 
where type='p' AND number<=@months

自己改一下begin和end

  • 2关注人数
  • 533浏览人数
  • 最后回答于:2020-5-23 13:06
    请选择关闭问题的原因
    确定 取消
    返回顶部