我有这样的结果(按年份,DayOfYear,小时排序):
Year DayOfYear Hour
2012 266 13:00
2012 266 13:15
2012 266 13:30
2012 266 15:15
2012 266 15:30
2012 266 16:00
我需要按四分之一小时来检索行顺序,然后按小时来检索行
:Year DayOfYear Hour
2012 266 13:00
2012 266 16:00
2012 266 13:15
2012 266 15:15
2012 266 13:30
2012 266 15:30
答案 0 :(得分:3)
基本上你可以按分钟订购,因为这将是0,15,30或45。
ORDER BY Year, DayOfYear, DATEPART(MINUTE, Hour), Hour;
答案 1 :(得分:1)
您可以在SELECT列表中使用DATEPART(mi, CONVERT(DATETIME, hour))
并对其进行排序。
答案 2 :(得分:0)
您可以使用以下内容转换为15分钟的间隔:
datediff(minute, 0, Hour) / 15 % 4
或在查询中:
select *
, datediff(minute, 0, Hour) / 15 % 4 as Quarter
from YourTable
order by
datediff(minute, 0, Hour) / 15 % 4
打印:
Year DayOfYear Hour Quarter
----------- ----------- ---------------- -----------
2012 266 13:00:00 0
2012 266 16:00:00 0
2012 266 13:15:00 1
2012 266 15:15:00 1
2012 266 15:30:00 2
2012 266 13:30:00 2
(6 row(s) affected)