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

Pet*_*tah 3 sql t-sql sql-server date-parsing sql-server-2008-r2

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

我的字符串已格式化 dd/mm/yyyy

我试过这个

SELECT CAST('01/08/2014' AS DATE)
Run Code Online (Sandbox Code Playgroud)

但那是mm/dd/yyyy格式化的演员.

Blo*_*ard 7

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

select convert(datetime, '01/08/2014', 103)
Run Code Online (Sandbox Code Playgroud)

103装置DD /月/年.查看文档.


Gre*_*ker 5

日期格式.

SET DATEFORMAT DMY ;
SELECT cast('01/08/2014' as date) ;
Run Code Online (Sandbox Code Playgroud)

兑换.

SELECT convert(date, '01/08/2014', 103 ) ;
Run Code Online (Sandbox Code Playgroud)

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

SELECT parse('01/08/2014' as date using 'en-NZ' ) ;
Run Code Online (Sandbox Code Playgroud)