亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > MySQL > 正文

Mysql如何查詢某條記錄在分頁的第幾頁詳析

2024-07-25 19:09:19
字體:
來源:轉載
供稿:網友

前言

在實踐中我們會遇到這樣的問題,知道某條記錄的id,然后需要判斷此條記錄如果按照id進行排序分頁,此條記錄在第幾頁。今天這篇文章為大家提供一個思路。

下面話不多說了,來一起看看詳細的實現方法吧

根據ID查詢分頁位置

根據ID來查詢分頁位置,比如按照ID的倒序排列,則可通過以下SQL查詢出大于此ID記錄數:

select count(id) from user where id > 5;

示例中user為表名,5位待匹配的id。很顯然,因為是倒序排序只需查找大于此id的記錄數即可,如果是正序排列,則小于此id即可。

當查出count值之后,怎么計算當前記錄位于第幾頁呢,這里以java代碼示例計算:

int pageSize = 10;// 假設上面查出的結果為count,值為11int count = 11;// 計算當前記錄所在的pageNum// 通過取模并加1獲得當前頁數為第2頁int pageNum = count/pageSize + 1;// 如果想進一步獲得在某頁的某個位置,則再進行取余即可,即第2頁的第1條記錄(從0開始)int index = count%pageSize;

多維度排序定位

上面通過簡單的ID進行排序還是比較好解決的,那么如果現在查詢某條記錄排序的維度不僅僅是ID,比如先按照年齡(age)進行倒序排序,如果age相同,則再跟進ID進行倒序排序。基本的sql語句如下:

select id, age from user order by age desc,id desc;

此時我們知道某條id為5,age為18的記錄,如何確定出此條記錄在多條件排序中的位置呢。

首先,多條件排序的難度在于age相同的情況,如果age不相同,只需如下sql即可像《根據ID查詢分頁位置》一樣定位出id的位置:

select count(id) from user where age > 18;

這樣就可以查詢出來此組合排序age不相同時此條記錄的位置,具體位置的算法同第一種情況。

那么當age用重復的情況如何處理呢。當然,可以通過復雜的關聯查詢或子表查詢來實現,這里通過另外一種方式,就是再查詢一下age相同,并且id大于當前用戶的記錄條數:

select count(id) from user where age = 18 and id > 5;

上面獲得了age相同情況下,并且id大于5的記錄,將第一步和第二步的統計結果相加,問題是不是又回到了《根據ID查詢分頁位置》的簡單模式了,還是同樣的算法可以算出當前記錄位于第幾頁了。

此種方案雖然查詢了兩次數據庫,如果很好的建立索引,比關聯查詢或子查詢要方便、簡潔和高效一些。

小結

以上是在實踐中遇到類似問題的兩個思考維度,希望能給大家帶來一個突破,同時也希望大家提供更好的方案。

好了,以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VeVb武林網的支持。


注:相關教程知識閱讀請移步到MYSQL教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩在线欧美在线国产在线| 久久色精品视频| 亚洲91精品在线观看| 九九综合九九综合| 国产一级揄自揄精品视频| 欧美国产日韩精品| 亚洲精品中文字幕av| 精品国产福利视频| 国产精品海角社区在线观看| 亚洲高清免费观看高清完整版| 亚洲xxxx在线| 国产亚洲精品久久久优势| 亚洲福利视频网| 精品久久久999| 亚洲高清在线观看| 亚洲区一区二区| 青青青国产精品一区二区| 亚洲情综合五月天| 国内外成人免费激情在线视频| 2019中文字幕在线免费观看| 91国产视频在线播放| 欧美成人四级hd版| 日本在线精品视频| 欧美与欧洲交xxxx免费观看| 久久影院免费观看| 国产精品入口夜色视频大尺度| 久久久免费高清电视剧观看| 欧美第一页在线| 国产精品91免费在线| 中国china体内裑精亚洲片| 92福利视频午夜1000合集在线观看| 亚洲精品美女在线观看播放| 91视频8mav| 亚洲丝袜av一区| www.欧美视频| 欧美日韩国产激情| 欧美性猛交xxxx乱大交3| 欧美日韩国产精品一区二区三区四区| 亚洲国产女人aaa毛片在线| 55夜色66夜色国产精品视频| 精品福利视频导航| 日韩在线欧美在线国产在线| 午夜欧美不卡精品aaaaa| 国产精品精品视频一区二区三区| 成人h片在线播放免费网站| 日韩中文在线中文网三级| 国产精品一区二区性色av| 日韩精品视频免费专区在线播放| 午夜精品久久久久久久99热| 欧美激情精品久久久久久| 日韩av在线电影网| 法国裸体一区二区| 一个人看的www欧美| 欧美激情久久久久| 亚洲欧美一区二区激情| 欧美日韩精品在线观看| 在线播放日韩av| 国产精品久久久久久久av电影| 日韩在线视频导航| 久久韩剧网电视剧| 欧美日韩国产综合视频在线观看中文| 欧美老女人在线视频| 国产日韩在线看| 伊人久久精品视频| 色噜噜国产精品视频一区二区| 亚洲黄色www| 亚洲成人精品久久久| 国产精品国产自产拍高清av水多| 日韩精品免费观看| 亚洲精品电影在线观看| 成人激情视频在线播放| 亚洲激情视频在线观看| 日韩欧美国产骚| 岛国av一区二区在线在线观看| 8x拔播拔播x8国产精品| 亚洲欧美国产日韩天堂区| 国内精品国产三级国产在线专| 精品丝袜一区二区三区| 欧美尤物巨大精品爽| 美日韩精品免费观看视频| 国产日韩在线精品av| 欧美性69xxxx肥| 欧美黄色免费网站| 国产亚洲精品久久久久久牛牛| 亚洲欧洲偷拍精品| 国产精品久久久久久av福利软件| 91黑丝高跟在线| 精品无码久久久久久国产| 26uuu亚洲国产精品| 日本在线精品视频| 91在线免费视频| 日韩欧美国产免费播放| 亚洲人免费视频| 92看片淫黄大片欧美看国产片| 色综合久久88色综合天天看泰| 成人免费高清完整版在线观看| 亚洲香蕉成人av网站在线观看| 亚洲国产精品美女| 国产精品欧美日韩一区二区| 成人午夜一级二级三级| 亚洲一区二区在线播放| 日韩在线免费视频观看| 久久视频在线看| 亚洲精品资源在线| 国产精品中文久久久久久久| 国产精品美乳一区二区免费| 亚洲男人天堂2023| 日本国产一区二区三区| 国产伦精品一区二区三区精品视频| 91中文字幕在线| 欧美亚洲另类制服自拍| 欧美日本在线视频中文字字幕| 亚洲男人7777| 久久久久久69| 久久影视免费观看| 成人av色在线观看| 国产精品igao视频| 日韩精品免费电影| 国产亚洲精品久久久久久777| 免费91麻豆精品国产自产在线观看| 日韩欧美亚洲成人| 国产一区二区丝袜高跟鞋图片| 亚洲精品国产精品国自产在线| 久色乳综合思思在线视频| 国产精品嫩草影院久久久| 色综久久综合桃花网| 欧美高清videos高潮hd| 国产成人亚洲综合91精品| 久久久久久久久久久亚洲| 欧美日韩精品二区| 国产免费观看久久黄| 日韩亚洲在线观看| 日韩成人中文字幕| 亚洲va电影大全| 国产精品女视频| 欧美日韩中文在线观看| 欧美肥臀大乳一区二区免费视频| 久久精品国产亚洲7777| 久久久久久18| 欧美性69xxxx肥| 91理论片午午论夜理片久久| 色诱女教师一区二区三区| 久久成人这里只有精品| 国产精欧美一区二区三区| 精品美女久久久久久免费| 欧美性猛交xxx| 亚洲偷熟乱区亚洲香蕉av| 欧美精品在线观看91| 一区二区成人精品| 日韩精品视频免费专区在线播放| 久久久久久久国产| 国产美女久久久| 色99之美女主播在线视频| 黄色一区二区在线观看| 亚洲精品视频免费| 国精产品一区一区三区有限在线| 日韩国产一区三区| 国产一区二区成人| 色婷婷综合成人| 26uuu亚洲伊人春色| 欧美日韩亚洲高清| 精品在线小视频| 亚洲区一区二区| 国产精品第三页|