0

我有一个带有日期和时间列的表格,如下所示

       Date           |      Time    

2013-08-23 00:00:00.000 | 13 年 5 月 26 日

2013-09-16 00:00:00.000 | 10.36.09

2013-10-21 00:00:00.000 | 11.58.35

日期字段的数据类型是 datetime,时间字段的数据类型是 varchar。我想连接这两个字段并在新字段中获得如下输出

2013-08-23 05:26:13.000

2013-09-16 10:36:09.000

2013-10-21 11:58:36.000

基本要求是上述时间在 PST 时区,我想将其转换为 EST、MST、AST 和 CST 时区。

4

1 回答 1

1

获取 PST 中的完整日期和时间可以通过获取相关字符串部分并将它们添加到日期来完成:

select 
  dateadd(hour, cast(left(theTime,2) as int), 
  dateadd(minute, cast(substring(theTime, 4,2) as int), 
  dateadd(second, cast(right(theTime, 2) as int), theDate))) as dateTimePST

在 SQL-Server 2000 中使用内置函数将dateTimePST转换为考虑夏令时 (DST) 的任何其他时区是不可能的。根据您的具体情况,您可以将一些转换表添加到您的数据库中,或者在您的业务逻辑中进行转换,或者其他适合您情况的解决方案。

于 2013-11-09T19:28:04.690 回答