比如表tb中有一个字段 name,该字段中有值为 A,B,C,D.....
正常按name顺序查找 select name from tb order by name;执行结果:A,B,C,D....
现在想按照显示结果为:A,C,B,D,.......,即B和C的顺序调换,其余还按正常顺序执行,有什么好办法么?
------解决思路----------------------
with t as
(select 'A' NAME
FROM DUAL
UNION ALL
select 'B' NAME
FROM DUAL
UNION ALL
select 'C' NAME
FROM DUAL
UNION ALL
select 'D' NAME
FROM DUAL
UNION ALL
select 'E' NAME
FROM DUAL)
SELECT * FROM T ORDER BY DECODE(NAME, 'C', 'A1', NAME)