sql 数据库如何选取最小值,第二最小值,第三最小值........
答案:4 悬赏:70 手机版
解决时间 2021-01-22 04:40
- 提问者网友:ミ烙印ゝ
- 2021-01-21 20:03
sql 数据库如何选取最小值,第二最小值,第三最小值........
最佳答案
- 五星知识达人网友:孤老序
- 2021-01-21 20:37
oracle数据的实现为:
select 编号,名称,规格,
max(decode(价格排名,1,价格||'-'||供货单位,null))最低价格及供货单位,
max(decode(价格排名,2,价格||'-'||供货单位,null))2及供货单位
.........
from(
select 编号,名称,规格,价格,供货单位,
row_nubmer()over(partition by 编号order by 价格) 价格排名
from 产品表
) a
group by 编号,名称,规格
order by 编号,名称,规格
select 编号,名称,规格,
max(decode(价格排名,1,价格||'-'||供货单位,null))最低价格及供货单位,
max(decode(价格排名,2,价格||'-'||供货单位,null))2及供货单位
.........
from(
select 编号,名称,规格,价格,供货单位,
row_nubmer()over(partition by 编号order by 价格) 价格排名
from 产品表
) a
group by 编号,名称,规格
order by 编号,名称,规格
全部回答
- 1楼网友:老鼠爱大米
- 2021-01-21 22:19
order by 编号,价格
- 2楼网友:不想翻身的咸鱼
- 2021-01-21 21:21
select *,row_number over(partition by 名称 order by 价格) rowNumber from table1
- 3楼网友:北方的南先生
- 2021-01-21 21:07
排序后使用top1将排名第一的去除就是排名第二的,将排名前2的去除就是排名第三的
如同分页的查询一样
如同分页的查询一样
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯