我有一个徒步旅行网站。当人们搜索徒步旅行时,他们会关心两个问题:
因此,有时我需要首先按日期显示搜索结果,但如果日期相同,则需要按距离排序。反之亦然。
在SQL中这样的事情可能吗?
答案 0 :(得分:5)
只需依次附加order-by语句即可。我很确定:
SELECT
Distance,
EventTime,
FROM Table1
ORDER BY Distance DESC, EventTime ASC
答案 1 :(得分:3)
ORDER BY
子句是SELECT
语句的最后一个子句。它采用列表,以逗号分隔。该列表从左到右处理,所以
ORDER BY distance, event_start
...将先按距离排序。在存在重复距离的情况下,将根据event_start列值对这些距离进行排序。默认情况下,排序采用ASCending顺序 - 您需要在逗号之前指定DESC
以反转逻辑。 IE:
ORDER BY distance DESC, event_start
...将最大距离放在结果集的顶部。
答案 2 :(得分:0)
select * from table order by field1, field2;