业务场景:mysql两个日期字段createtime,updatetime,当updatetime有值时优先按updatetime排倒序,当updatetime为null时优先按createtime排倒序,两个都有值时优先按updatetime排倒序
在这个查询中,我们首先使用COALESCE函数按照updatetime和createtime字段的优先级进行排序。如果updatetime为NULL,它会选择createtime的值。然后,我们在updatetime的基础上再次排序,这确保了在两者都有值时,updatetime字段的值会优先。
SELECT *
FROM your_table
ORDER BY COALESCE(updatetime, createtime)DESC, updatetime DESC;