我正在尝试将以下varchar日期转换为datetime格式,但它不起作用
select Convert(datetime, '2010-04-14',103)+10 AS DocDueDate
from tblActionHeader AH
我收到了错误
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.
答案 0 :(得分:3)
您使用dd / mm / yyyy格式的日期样式,请改用样式120:
select Convert(datetime, '2010-04-14',120) + 10 AS DocDueDate
from tblActionHeader AH
答案 1 :(得分:0)
您是否尝试过演员,“选择演员('2010-04-14'作为日期时间)”?
答案 2 :(得分:0)
例如
create table test2 (updatetime varchar(20));
insert into test2 values ('2010-9-12 10:33:5');
select updatetime from test2 where convert(datetime,updatetime,110)>'2010-9-12
答案 3 :(得分:0)
如果您使用的是样式103,则应使用英式法语日期格式。
select DATEADD(Day, 10,Convert(datetime, '14/04/2010',103)) AS DocDueDate