SQL Server - 如何从日期时间字段中选择日期时间

时间:2012-06-27 12:18:34

标签: sql sql-server sql-server-2008 datetime sql-server-2008-r2

我如何做oracle相当于:

to_char(date_field, 'YYYY-MM-DD:HH')  # e.g. 2012-05-25:19

在SQL Server中?

我想要排序列,这就是我想要year-month-day-hour

的原因

2 个答案:

答案 0 :(得分:3)

select convert(varchar(10),date_field,120) + ':'+
convert(varchar(2), datepart(hour,date_field))

答案 1 :(得分:3)

不幸的是,mssql在自定义日期格式方面并不出色。你坚持使用字符串解析:

e.g。

select replace(CONVERT(varchar(13),date_field,121),' ',':')

可用格式的完整详细信息如下:http://msdn.microsoft.com/en-us/library/ms187928.aspx

注意:如果你很幸运能够在SQL 2012中获得一个新的FORMAT函数,它基本上是.Net等价物的包装:请参见:http://msdn.microsoft.com/en-us/library/hh213505.aspx