我在SQL Server中有一个表,有时DATE
列从导入过程得到错误的日期,并且它被设置为2099年8月22日,而DATE
列的时间部分是OK。< / p>
我可以使用此查询查看所有这些列:
SELECT
[ImportId], [Date], [PickupId],
[Quantity], [Temp], [ImportDate]
FROM
[DatabaseName].[dbo].[Imports]
WHERE
Date >= Convert(datetime, '2018-12-31' )
因此, DATE 列的错误日期和正确的时间,如下所示:
2099-08-22 03:10:18.000
且IMPORTDATE
列的正确日期,但将时间部分清零,如下所示:
2017-03-22 00:00:00.000
我想将 IMPORTDATE 的日期部分和DATE列的时间部分组合在一起,成为新的DATE列:
2099-08-22 03:10:18.000 (time part from DATE column)
2017-03-22 00:00:00.000 (date part from IMPORTDATE column)
2017-03-22 03:10:18.000 (combined will be new DATE column)
所以这条记录:
ImportId Date PickupId Quantity Temp ImportDate
74256 2099-08-22 03:10:18.000 111111 2356 3,8 2016-04-12 00:00:00.000
会变成这样:
ImportId Date PickupId Quantity Temp ImportDate
74256 2016-04-12 03:10:18.000 111111 2356 3,8 2016-04-12 00:00:00.000
有谁愿意构建适当的SQL查询来为我做这个吗?
答案 0 :(得分:0)
将错误的日期时间值视为仅限时间。计算从零到正确日期的天数。将该天数添加到正确的时间=正确的日期时间值。
请注意,你不能在时间值上使用dateadd(),因此我已经转换为时间,然后将其转换回日期时间。
self.check.alpha
答案 1 :(得分:0)
我无法在此发表评论,但这正是您所需要的:
document.querySelectorAll(".two")[0].appendChild(clone);
你可以在这里找到LukeH:How to combine date from one field with time from another field - MS SQL Server