在sql查询上排序Id,日期字段

时间:2017-01-22 16:50:37

标签: sql-server sql-server-2008 tsql

我现在的SQL查询按日期排序。在17/6/17,我有两个相同的记录,具有不同的id字段。

date desc排序一起,我希望包含id字段desc。因此,较高的Id字段值将与最近的日期一起出现。

Id        Date  Status
0       1/6/17 8:40 Available
0       1/6/17 8:37 Available
0       1/6/17 8:37 Available
697000  1/6/17 8:37 Completed
700920  1/6/17 8:37 Completed

由于某些原因,Id未进行排序。我试过了order by date, id descorder by id desc。它没有用。

1 个答案:

答案 0 :(得分:4)

您为order by中的每列指定升序或降序。默认为升序。 order by date desc, id表示order by date desc, id asc

select id, [date], [status]
from tbl
order by [date] desc, id desc

如果您的[date]varchar列,则需要cast() or convert()将其datetime(或other date and time data type)正确排序。< / p>

select id, [date], [status]
from tbl
order by cast([date] as datetime) desc, id desc