我有一个查询,但我想按以下方式订购数据:
状态(所以我有顶部状态 = 1 和底部状态 2 的记录)
如果记录
status = 1
按以下顺序排列它们
a)CASE WHEN i.assigned_to = '.USER_ID.' THEN 0 ELSE 1 END
b)CASE WHEN (i.approved_by > 0 OR i.approved_on IS NOT NULL) THEN 0 ELSE 1 END
c)i.priority DESC
d)i.created_on ASC
如果记录有
status = 2
然后按顺序排列记录completed_on DESC
这是我当前的语法,但我不知道如何拆分订单
ORDER BY
i.status ASC,
CASE WHEN i.assigned_to = '.USER_ID.' THEN 0 ELSE 1 END,
CASE WHEN (i.approved_by > 0 OR i.approved_on IS NOT NULL) THEN 0 ELSE 1 END,
i.priority DESC,
i.created_on ASC
我的查询目前按以下顺序排序所有记录 a) CASE WHEN i.assigned_to = '.USER_ID.' THEN 0 ELSE 1 END b) (CASE WHEN (i.approved_by > 0 OR i.approved_on IS NOT NULL) THEN 0 ELSE 1 END) c) i.priority DESC d) i.created_on ASC
我希望它只由那些订购,status = 1
除非另有订购completed_on DESC