1

我在将dd/mm/yy hh:mi:ss格式字符串转换为yyyy-mm-dd hh:mi:ss格式时遇到问题。

我尝试使用CONVERT()如下:

select CONVERT(VARCHAR, '11/10/11 10:56:58', 120)

但这没有任何变化:

11/10/11 10:56:58
4

3 回答 3

8

您需要先转换为日期时间以更改字符串以反映某种区域格式。确保您也正确解释了日期时间值;在某些系统上是 10 月 11 日,在其他系统上是 11 月 10 日。

SELECT CONVERT(CHAR(19), CONVERT(DATETIME, '11/10/11 10:56:58', 3), 120);

char最后,在您的orvarchar声明中使用正确数量的字符。不指定长度是懒惰的,可能会导致问题。看:

于 2013-01-21T19:42:44.053 回答
4

这将起作用:

SELECT CONVERT(VARCHAR(19),CONVERT(DATETIME,'11/10/11 10:56:58',3),120)
于 2013-01-21T19:42:36.433 回答
1

问题:您正在将 VARCHAR 转换为 VARCHAR。

如果您使用 DATETIME,则您的查询很好。

SELECT CONVERT(VARCHAR(19), CAST('11/10/11 10:56:58' AS DATETIME), 120);

小提琴

于 2013-01-21T19:40:26.640 回答