警告 - 前面的 TSQL 新手问题:
例如,我有一个DateTimeOffset
for,2013-03-11 11:04:26.0000000 +00:00
我需要为同一天创建两个新日期,一个在 00:01,另一个在 23:59。
到目前为止,我已经尝试了各种方法DATETIMEOFFSETFROMPARTS
,DATEPART
但似乎有点尴尬 - 是否有一个简单的解决方案来缩短小时/分钟/等。只是用一天用两个必需的时间代替时间?
任何提示表示赞赏。
警告 - 前面的 TSQL 新手问题:
例如,我有一个DateTimeOffset
for,2013-03-11 11:04:26.0000000 +00:00
我需要为同一天创建两个新日期,一个在 00:01,另一个在 23:59。
到目前为止,我已经尝试了各种方法DATETIMEOFFSETFROMPARTS
,DATEPART
但似乎有点尴尬 - 是否有一个简单的解决方案来缩短小时/分钟/等。只是用一天用两个必需的时间代替时间?
任何提示表示赞赏。
知道了...
select @pkgDate = CONVERT (date, @pkgDate)
select DATEADD (minute, 1, @pkgDate)
select DATEADD(hour, 23, DATEADD (minute, 59, @pkgDate))
..更好/更简洁的方法仍然值得赞赏。
你也可以试试这个选项
DECLARE @date datetimeoffset = '2013-03-11 11:04:26.0000000 +00:00'
SELECT DATEADD(day, DATEDIFF(day, 0 , @date), '00:01'),
DATEADD(day, DATEDIFF(day, 0 , @date), '23:59')
--Results:2013-03-11 00:01:00.000 2013-03-11 23:59:00.000