mysql 查询排序问题

mysql 查询排序问题:

加入我现在有一个 mysql 表,字段是:

field name value
id 主键
status 1, 2, 3, 4
create_time 创建时间

现在我想要一种排序,需要下面的条件:

  • status=4 的数据在前面,且 status=4 的数据按照 create_time 倒叙排列
  • 除了 status=4 的数据,其他数据根据 create_time 倒叙排列

想到的一种方法是:加一个 sort 的字段,让 status=4 的 sort 为 1,其他均为 0,然后 order_by -sort,-create_time,这样能够解决

但我不太想另加字段:

  • 有没有不添加字段的解决方法呢?有没有遇到过这种情况的大神,怎么解决的?
  • 在 django 中怎么解决呢?
阅读 2.1k
1 个回答

order by field(status,4,0,1,2,3,。。。)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题