以特定格式将字符串转换为日期

时间:2014-07-22 01:19:19

标签: sql sql-server tsql sql-server-2008-r2 date-parsing

如何在SQL Server 2008 R2中将字符串转换为日期类型?

我的字符串格式为dd/mm/yyyy

我试过这个

SELECT CAST('01/08/2014' AS DATE)

但是这会以mm/dd/yyyy格式进行转换。

4 个答案:

答案 0 :(得分:7)

您需要convert功能,您可以在其中指定格式代码:

select convert(datetime, '01/08/2014', 103)

103表示dd / mm / yyyy。请参阅docs

答案 1 :(得分:5)

DATEFORMAT。

SET DATEFORMAT DMY ;
SELECT cast('01/08/2014' as date) ;

转换。

SELECT convert(date, '01/08/2014', 103 ) ;

为了完整起见,SQL Server 2012及更高版本具有以下功能。

SELECT parse('01/08/2014' as date using 'en-NZ' ) ;

答案 2 :(得分:0)

oracle中的

TO_DATE函数用于将任何字符转换为日期格式。

例如:

SELECT to_date ('2019/03/01', 'yyyy/mm/dd')
FROM   dual;
SQL SERVER中的

CONVERT函数用于将表达式从一种数据类型转换为另一种数据类型。

例如:

SELECT CONVERT(datetime, '01/08/2014', 103) date_convert;

希望这会对您有所帮助。

答案 3 :(得分:-1)

您可以通过以下方式轻松地将字符串转换为日期 SELECT CAST(您的日期为DATE)