SQL Server将Varchar转换为Datetime

HaO*_*aOx 45 sql sql-server formatting datetime varchar

我有这个日期格式:2011-09-28 18:01:00(在varchar中),我想将它转换为datetime更改为此格式28-09-2011 18:01:00.我该怎么做?

Zyk*_*yku 72

SELECT CONVERT(Datetime, '2011-09-28 18:01:00', 120) -- to convert it to Datetime

SELECT CONVERT( VARCHAR(30), @date ,105) -- italian format [28-09-2011 18:01:00]
+ ' ' + SELECT CONVERT( VARCHAR(30), @date ,108 ) -- full date [with time/minutes/sec]
Run Code Online (Sandbox Code Playgroud)


zzz*_*zzz 11

像这样

DECLARE @date DATETIME
SET @date = '2011-09-28 18:01:00'
select convert(varchar, @date,105) + ' ' + convert(varchar, @date,108)
Run Code Online (Sandbox Code Playgroud)


Die*_*ego 8

网站显示了几种格式选项.

例:

SELECT CONVERT(VARCHAR(10), GETDATE(), 105) 
Run Code Online (Sandbox Code Playgroud)

  • 除了105不包括时间部分.OP以字符串开头,而不是日期时间.这**有帮助,但不是我认为完整的答案. (5认同)
  • 感谢评论伙伴们.我其实只是想指出他正确的方向,这就是我写"例子"的原因 (2认同)

bay*_*max 5

您可以拥有所有不同的样式datetime conversion:

http://www.w3schools.com/sql/func_convert.asp

这有一系列的价值观: -

CONVERT(data_type(length),expression,style)
Run Code Online (Sandbox Code Playgroud)

对于样式值,
选择您需要的任何人,就像我需要106.

现有的所有答案都有一个指向帮助网站的特定链接,以便初学者可以参考.这更有用