日期为INT时的DateADD()

时间:2017-01-26 22:24:55

标签: sql

我正在尝试使用DateAdd(),但我的日期是在INT中。我知道转换()但我不确定我做错了什么:     选择DATEADD(dd,-60,convert(datetime,20161231))

它抛出:“将表达式转换为数据类型datetime的算术溢出错误”。请建议。

1 个答案:

答案 0 :(得分:1)

首先将int转换为字符串。日期中的破折号是可选的...更具可读性

2016-11-01 00:00:00.000

返回

Select cast('2016-12-31' as date)
      ,cast('20161231'   as date)

只是为了好玩,请尝试以下

{{1}}