SQL Server将数字转换为日期

时间:2016-07-23 19:41:51

标签: sql-server

如何将列中包含20160912等值的数字转换为09/12/2016格式的日期格式,并按日期格式的日期排序。

1 个答案:

答案 0 :(得分:1)

您可以使用castconvert内置函数。根据{{​​1}}的类型,您可以执行以下操作 A) 20160912

int

B) declare @d int=20160912 select convert(varchar(20),convert(date,convert(varchar,@d)),101) --step by step declare @dStr varchar(20) set @dStr = convert(varchar,@d) --'20160912' -- or = cast(@d as varchar) declare @dDate date --or datetime set @dDate = convert(date, @dStr) --2016-09-12 (this is external representation) --show in MM/dd/yyyy format select convert(varchar(20), @dDate, 101) --magic 101 for MM/dd/yyyy --09/12/2016 只省略最里面的转化