有个时候单纯的 order by asc/desc还远远不能满足需求,比如一张审批表 有个 status字段,它可能的值有 100(未读), 200(同意),300(驳回),-100(由他人同意)....等等之类,那我们可能会有个需求就是,不管怎么样,把所有未读的审批单都排在前面,后面怎么排无所谓,这个时候可以使用 field函数,用法举例
select * from table_name order by field(status, 100) desc, status
mysql field 函数官方文档:https://dev.mysql.com/doc/refman/5.5/en/string-functions.html#function_field
本文介绍了一种在MySQL中使用Field函数优化特定字段排序的方法,例如在审批表中将未读状态的记录始终置于顶部,不论其他字段的排序如何。通过实际案例展示了如何结合Field函数与其他排序规则实现复杂的数据排序需求。
1205

被折叠的 条评论
为什么被折叠?



