如何在SQL Server中将文本转换为日期时间?

时间:2018-02-23 01:47:00

标签: sql sql-server datetime text

我想在SQL Server中将文本转换为日期时间。

我的格式为dd/mm/yyyy,但我希望将此文字格式转换为日期时间yyyymmdd

我正在使用这种方法。

Convert(varchar(8), Right(text, 4) + Substring(text, 4, 2) + Left(text, 2), 112)

但我需要一个更简单的查询。

1 个答案:

答案 0 :(得分:2)

<强>答案:

SELECT FORMAT(CONVERT(date, '30/01/2018', 103), 'yyyyMMdd')

<强>解释

所以这个有点棘手,因为你有DD / MM / YYYY,所以你需要首先进行CONVERT:

SELECT CONVERT(date, '30/01/2018', 103)

结果:2018-01-30

然后,如果您使用的是SQL Server 2012+,请使用FORMAT()

SELECT FORMAT(CONVERT(date, '30/01/2018', 103), 'yyyyMMdd')

结果:20180130