首页 > 解决方案 > 排序时始终显示最高值

问题描述

我是 Oracle,我有一个包含以下值的表

1
2
4
10

我总是希望 2 在所有其他值之后以 DESCending 顺序显示最高,如下所示:

2
10
4
1

标签: sqloracleplsql

解决方案


您可以使用;order by建立一个价值。case例如:

with tab(col) as (
    select  1 from dual union all
    select  2 from dual union all
    select  4 from dual union all
    select 10 from dual 
)    
select col
from tab
order by case when col = 2 then 1 else 2 end asc,
      col desc

给出:

       COL
----------
         2
        10
         4
         1

推荐阅读