1、 利用DECODE 函数
SELECT
A.ACTIVITY_PERSON_ID,
A.ACTIVITY_DEPT_NAME,
A.ACTIVITY_OFFICE_NAME,
A.CREATE_TIME,
A.STATE
FROM
MARKET_ACTIVITY A
ORDER BY
DECODE(A.STATE ,'1',-2,'3',-1,A.STATE )
2、利用 CASE子句
SELECT A.ACTIVITY_PERSON_ID,
A.ACTIVITY_DEPT_NAME,
A.ACTIVITY_OFFICE_NAME,
A.CREATE_TIME,
A.STATE
FROM MARKET_ACTIVITY A
ORDER BY CASE A.STATE
WHEN ‘1’ THEN -2
WHEN ‘3’ THEN -1
ELSE
TO_NUMBER(NVL(A.STATE, 0))
END
本文介绍了两种在SQL中实现特定排序需求的方法:使用DECODE函数和CASE子句。通过具体实例展示了如何根据不同状态值调整记录的排序顺序。
2583

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



