按照设定状态排序
status 有如下值: 0,1,2,3,4
需求是按照0,1,2,3,4 及其创建时间倒序
order by field(status,
'0', '1', '2', '3', '4')
按照不同规则倒序或正序
举例:按时间排序 , 要求有提交时间则按提交时间正序,否则按照创建时间倒序
– 思路: 把时间转为时间戳, 按照规则,✖️ 1 或 -1 来实现不同规则倒序或正序
UNIX_TIMESTAMP(ifnull(a.submitted_at, a.created_at))
*
* if(isnull(a.submitted_at), 1, -1) desc