使用SQL Server 2005,我正在处理一个数据库,该数据库有两列来跟踪本质上是一个单一的DateTime的内容(而且我不能为我的数字生活找出为什么有人会认为这是一个好主意)。如何合并来自两个DateTime列(SQL Server)的数据?
基本上,一列,我们称之为OrderDate,包含一个DateTime,像这样:2008-02-29 00:00:00:00,而另一列OrderTime有这样一个列表:1900-01-01 11: 15:00.000
所以,现在我不得不将这两者结合起来,只要我想在一个地方显示整个日期和时间。从用户界面的角度来看,这很容易,但我如何在数据库级别执行此操作?我希望能够编写一个查询查找来自这两列的组合日期和时间之间的DATEDIFF,并将其与另一个DateTime值进行比较。
例:
SELECT DATEDIFF(mi, CompletionTime, OrderTime) AS TurnAroundTime FROM SomeRecord
上述福利课程,OrderTime的日期组件是1900-01-01,导致略微倾斜结果的问题...
我还补充说,尽管他应该有绝对的把握这两列将永远不会有一个日期或时间,以及一个时间或日期的“作品”,分别。例如,他可以确定他在OrderTime中永远不会看到'1992-01-01 11:15:00.000'吗?在这种情况下,我建议在calc'd列中使用DATEPART()进行一些计算。 – 2009-12-11 20:29:05