sql - 排序时始终显示最高值
问题描述
我是 Oracle,我有一个包含以下值的表
1
2
4
10
我总是希望 2 在所有其他值之后以 DESCending 顺序显示最高,如下所示:
2
10
4
1
解决方案
您可以使用;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
推荐阅读
- python - KeyError: u'NearestNeighbors' on loading saved model from tf.contrib.factorization.KMeansClustering
- angular - Angular 6 tslint 重复每个警告和错误
- mysql - 是否可以对 MySQL 中的组进行子计数
- r - R帮助:保持一个变量不变的F统计回归测试
- reporting-services - SQL Reporting Services:链接的报表参数未更新
- go - 指针接收器中未解析的类型
- php - PHP - 像这样获取帖子:变量中的联系人[id]
- node.js - 如何禁止添加具有相同objectId的mongodb中已经存在的较小数字?
- javascript - Fetch 是空的 Redux Saga
- xml - Excel 到 XML xsd:date 模式格式,xsd 的“what if”语句?