我正在使用 sql,我有一个看起来像这样的表:
Id roomid startBookingRoom EndBookingRoom startTime
1 1 2010/10/10 15:00:00 2010/10/10 18:00:00 2019/04/29 15:00:00
2 2 2010/10/09 15:00:00 2010/10/09 18:00:00 2019/04/30 15:00:00
3 3 2010/10/08 15:00:00 2010/10/08 18:00:00 2019/04/31 15:00:00
3 4 2010/10/06 15:00:00 2010/10/68 18:00:00 2019/04/31 15:00:00
3 4 2010/10/06 14:00:00 2010/10/68 18:00:00 2019/04/31 15:00:00
我想要订单 startTime Desc(2019/04/31 第一和 2010/04/31 第二)。然后在 startTime(2019/04/31 15:00:00) 中,我要订购 roomId Desc(4 first and 3 secord)。然后在房间 ID 中,我要订购 startBookingRoom ASC(首先是 2010/10/06 14:00:00,然后是 2010/10/06 15:00:00)
逐步顺序如下:按 desc 顺序开始时间,如果开始时间相同,则顺序房间 ID desc,如果房间 ID 相同,则顺序开始预订房间。
startTime(desc) => roomId => startBookingRoom
我写的 sql 看起来像但是不正确:
Select * from rooms when startTime >= '2019/04/25' order by
startTime,roomId,startBookingRoom
但它不起作用。 如何一步步点餐 startTime(desc) => roomId => startBookingRoom 看起来像:按 desc 顺序开始时间,如果开始时间相同,则顺序房间 ID desc,如果房间 ID 相同,则顺序开始预订房间。谢谢
最佳答案
默认顺序是 ASC(升序)所以在你的情况下添加 DESC(降序)
Select * from rooms where startTime >= '2019/04/25'
order by startTime DESC, roomId DESC, startBookingRoom DESC
关于mysql - 如何在sql中逐步排序字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56481660/