sql server中的str_to_date函数?

时间:2010-08-19 19:41:31

标签: sql sql-server tsql string-to-datetime

MySQL有一个名为STR_TO_DATE, that converts a string to date的函数。

问题:

SQL Server中是否有类似的功能?

6 个答案:

答案 0 :(得分:5)

如果您需要解析特定格式,请使用CONVERT(datetime, @mystring, @format)。使用此作为参考:http://www.sqlusa.com/bestpractices/datetimeconversion/

答案 1 :(得分:5)

  

如果字符串是7/7/2010怎么办?

然后根据您的需要使用CONVERT 101(mm / dd / yy)或103(dd / mm / yy):

SELECT CONVERT(DATE, '7/7/2010', 103)

结果:

2010-07-07

答案 2 :(得分:2)

使用CAST

declare @MyString varchar(10)
declare @MyDate datetime

set @MyString = '2010-08-19'
set @MyDate = cast(@MyString as datetime)
select @MyDate

答案 3 :(得分:1)

CAST(<string> AS DATETIME)

答案 4 :(得分:1)

这是一个很好的例子:

declare @myDate datetime
set @myDate = '06/09/2017'

select concat(convert(varchar(20), @myDate,101), ' -- ', 
              convert(varchar(20), @myDate,103), ' -- ',
              convert(varchar(20), @myDate,6))

这取决于1011036

09/06/2017 -- 06/09/2017 -- 06 Sep 17

日期类型的一个很好的总结在这里 - https://www.w3schools.com/sql/func_convert.asp

答案 5 :(得分:-1)

在MSSQL上: 选择演员('2012/06/12 10:32 AM'作为日期时间);

你会得到它: 2012-06-12 10:32:00.000