在有一分数列(由高到低),我想取出该列的前30% 怎么取呀? 如果想取出30%-60%的数据又该怎么取?
select *
from
(
select a.*,row_number() over (order by 分数 desc) rn,count(*) over() tot
from a
)
这是30%的
where trunc(100*rn/tot)<=30
30%-60%
where trunc(100*rn/tot)>=30 and trunc(100*rn/tot)<=60
---
想在查询时加上其他条件,这怎么加呀
一般的过滤条件写在()里面即可以了啊