开发者

str_to_date function in sql server?

MySQL has a function called STR_TO_DATE, t开发者_运维技巧hat converts a string to date.

Question:

Is there a similar function in SQL Server?


If you need to parse a particular format, use CONVERT(datetime, @mystring, @format). Use this as a reference: http://www.sqlusa.com/bestpractices/datetimeconversion/


What if the string is 7/7/2010?

Then use CONVERT with either 101 (mm/dd/yy) or 103 (dd/mm/yy) depending on what you want:

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

Result:

2010-07-07


CAST(<string> AS DATETIME)


Use CAST.

declare @MyString varchar(10)
declare @MyDate datetime

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


Here is a good example:

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))

This is what you get, depending on 101 or 103 or 6:

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

A good summary of types of dates is here - https://www.w3schools.com/sql/func_convert.asp


On MSSQL: select cast('2012/06/12 10:32AM' as datetime);

You will get it: 2012-06-12 10:32:00.000

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜