【发布时间】:2011-07-29 09:32:03
【问题描述】:
我在一个名为 TimeZone 的表中有两列 Arrive_Date 和 Interval。我正在尝试添加这两列以获得第三列,其中包含日期和间隔。
我的表有这样的数据:
Interval Arrive_Date
830 2010-11-01 00:00:00.000
1100 2010-11-01 00:00:00.000
1230 2010-11-02 00:00:00.000
0 2011-01-04 00:00:00.000
30 2011-03-17 00:00:00.000
我想要第三列
Interval Arrive_Date Arrive_DateTime
830 2010-11-01 00:00:00.000 2010-11-01 08:30:00.000
1100 2010-11-01 00:00:00.000 2010-11-01 11:00:00.000
1230 2010-11-02 00:00:00.000 2010-11-02 12:30:00.000
0 2011-01-04 00:00:00.000 2011-01-04 00:00:00.000
30 2011-03-17 00:00:00.000 2011-03-17 00:30:00.000
我正在使用这个查询:
SELECT CAST(LEFT(CONVERT(VARCHAR,Arrive_DATE,101),10) + ' ' + LEFT(Interval,2) + ':' + RIGHT(Interval,2) + ':00' AS DATETIME)
from TimeZone
但我收到此错误:
Msg 242, Level 16, State 3, Line 1
The conversion of a varchar data type to a datetime data type resulted in an out-of-range value.
谁能帮我解决这个问题?
【问题讨论】:
-
您已经存在了足够长的时间并提出了足够多的问题来了解如何正确格式化代码 - 请这样做。
-
@JNK 你能告诉我我们如何在这里格式化吗?我试过这样做,但我不知道该怎么做
-
在文本编辑器中,选择要标记为
Code的内容,然后单击大括号{}图标。这将“编码”任何选定的内容。
标签: sql sql-server-2005 tsql sql-server-2008 datetime