MySQL中實現分頁查詢:在數據量較小的情況下可使用limit查詢來實現分頁查詢,在數據量大的情況下使用建立主鍵或唯一索引來實現,另外可通過order by對其排序
在后端項目中總是避免不了admin管理,當后臺管理需要展示數據時就會需要用到分頁。
一般情況下在MySQL中進行分頁查詢時,會用到limit查詢,而且在查詢中都會使用到order by來進行排序。接下來將具體介紹MySQL是如何實現分頁查詢的
分頁需求:
客戶端通過傳遞start(頁碼),limit(每頁顯示的條數)兩個參數去分頁查詢數據庫表中的數據,MySql數據庫提供分頁的函數有limit m,n,但是該函數的用法和我們的需求不一樣,所以就需要根據實際情況去改寫適合自己的分頁語句。例
查詢第1條到第10條的數據的sql是:
select * from table limit 0,10;
對應我們的需求就是查詢第一頁的數據:
select * from table limit (1-1)*10,10;
從上面的分析我們可以得出分頁sql的格式是:
select * from table limit (start-1)*limit,limit;
其中start是頁碼,limit是每頁顯示的條數。
建立主鍵或者唯一索引
在數據量較小的時候使用 limit 進行數據分頁在性能上面不會有明顯的緩慢,但是當數據量達到了萬級或百萬級時,sql語句的性能將會影響數據的返回。這是就要使用主鍵或者是唯一索引來代替limit進行數據分頁
例:返回10到50之間的數據
設主鍵或唯一索引為demo_id
select * from table where demo_id > (pageNo-1)*pageSize limit pageSize;
基于數據再排序
當需要返回的信息要按順序或者逆序時,就需要對上面的數據進行排序??捎胦rder by ASC表示順序,order byDESC表示逆序,一般情況下默認的為順序
例:返回的數據依照demo_id的順序進行排列
select * from table where demo_id > (pageNo-1)*pageSize order by demo_id limit pageSize;
本文由 貴州做網站公司 整理發布,部分圖文來源于互聯網,如有侵權,請聯系我們刪除,謝謝!
c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...
2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...
:喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...
6210開頭是什么銀行?農村商業銀行的銀行卡開頭一般為6210。農村商業銀行,簡稱:農商銀行,是由轄內農民、農村工商戶、企業法人和其他經濟組織共同入股組成的股份制的地方性金融機構。6210開頭是農村商業銀行,前身是農村信用社,如果是以6210開頭13-16位數的話一般是農商行信用卡,如果是以6210開頭的19位數的話一般是儲蓄卡。農村商業銀行轉賬多久能到賬?資金的到賬時間一般情況下,在進行銀行轉賬...
信用卡的visa卡和mastercard有什么區別?兩者的區別主要有發行機構不同,主要消費區域不同、發行時間不同、外幣結算不同以及收費不同。①發行機構不同:visa卡是由參加威士國際組織的會員發行的,mastercard是萬事達卡國際組織發行的。②主要消費區域不同:visa在亞洲和澳大利亞的使用比較多,而mastercard的主要客戶在歐洲和北美。③發行時間不同:visa卡是于1976年開始發行的...
網絡理財產品都有哪些?互聯網理財是居民通過線上渠道購買不同類型或機構的金融產品,以實現財富的保值增值的行為。隨著互聯網理財產品的不斷創新和客戶群的不斷壯大,互聯網理財在金融市場中發揮了積極的作用。在互聯網:有三種主要的財務管理方式1.固定收益互聯網財富管理這種互聯網理財是最受投資者歡迎的理財類型,具有收益高、安全、投資門檻低的優點。2.貨幣基金互聯網理財互聯網的這種理財是互聯網參與人數最多的理財類...