转自:[http://www.jquerycn.cn/a_26080](http://www.jquerycn.cn/a_26080) # 正文 **功能** 课程列表数据展示 **需求** 1. 正常开班的班级显示在前边,结课的班级显示在后边 2. 正常开班的班级按开课时间倒序 3. 结课的班级按结课时间倒序 **字段** - status:班级状态 - start\_date:开课日期 - end\_date:结课日期 **语句** ```sql SELECT * FROM `table` ORDER BY `status` ASC, CASE WHEN `status` = 1 THEN `start_date` END DESC, CASE WHEN `status` = 3 THEN `end_date` END DESC; ``` # 参考 - [ORDER BY 高级用法之CASE WHEN](https://www.cnblogs.com/178mz/p/6428958.html) - [MYSQL数据库中ORDER BY CASE WHEN使用示例](http://www.jquerycn.cn/a_26080)