分頁查詢前1 4,1 2,3 4的資料

2021-10-04 23:26:57 字數 972 閱讀 2337

今天遇到了個需求,根據傳入的數值搜尋前1/4,1/2,3/4資料

要拿到給定的數值,首先需要拿到百分位數,什麼是百分位數?

簡單舉個例子:高等院校的入學考試成績經常以百分位數的形式報告。比如,假設某個考生在入學考試中的語文部分的原始分數為54分。相對於參加同一考試的其他學生來說,他的成績如何並不容易知道。但是如果原始分數54分恰好對應的是第70百分位數,我們就能知道大約70%的學生的考分比他低,而約30%的學生考分比他高。

所有只要拿到1/4的資料量對應的百分位數就可以了

以下是service實現類

主要就是percentile()這個方法獲取百分位數,再根據自己的需求查詢一下就好了

@override

public ipageselectpagelist(pagepage, fundinfof fundinfof)

string fundmanagerrating = fundinfof.getfundmanagerrating();

if (stringutils.isnotblank(fundmanagerrating))

query(fundinfof);

}public void query(fundinfof fundinfof)

string fundinfoliststr = (string) redisutil.get(fund_info_key);

listinfos = jsonarray.parsearray(fundinfoliststr,fundinfo.class);

if(fundinfof.getselectindustry() != null)

}public double percentile(double data,double p)else

}

xml

and select_industry  =  ]]> #

MySQL 查詢分頁資料中分組後取每組的前N條記錄

在使用資料庫查詢的時候,如果遇到對分頁的資料分組,取每組的前n條,實際就是兩次分頁,先分頁,在對分組的每組排序分頁。sql 如下 select a.from select t1.select count 1 from 表 where 分組字段 t1.分組字段 and 排序欄位as group id ...

海量資料分頁查詢

select top 25 id,registerid,filenameid,createtime from tbfilenamerecord where id select min id from select top 100 id from tbfilenamerecord where regi...

coredata 分頁查詢資料

其實分頁查詢我第一反映是用sqlite的查詢語句來操作,後來想想core data底層也是呼叫sqlite,應該也是可以分頁查詢的 不過iphone開發畢竟中文資料不多,翻了下官方英文文件,找到下面的方法,主要使用下面兩個函式 1 2 3 4 限定查詢結果的數量 setfetchlimit 查詢的偏...