SQl从nvarchar错误查询datetime

时间:2015-08-12 11:33:37

标签: sql-server sql-server-2008-r2

在SQL中,

declare @date datetime ='Jul15' 
select CONVERT(varchar(10),@date,105) 

收到错误

  

从字符转换日期和/或时间时转换失败   字符串。

请帮忙

1 个答案:

答案 0 :(得分:1)

这是因为Jul15不是有效的SQL Server DateDateTime值,因此在尝试将其转换为日期/日期时将其分配给日期时出错变量

理想情况下,在SQL Server中使用日期或日期时间值时应使用ANSI-Standard,ANSI-Standard Date值的格式为YYYYMMDD,因此您的语句应如下所示。 ....

declare @date datetime ='20150701' 
select CONVERT(varchar(10),@date,105)