91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

mysql 中怎么實現limit分頁查詢

發布時間:2021-08-04 16:50:37 來源:億速云 閱讀:225 作者:Leah 欄目:數據庫

本篇文章為大家展示了mysql 中怎么實現limit分頁查詢,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。


  優化方法1(讓分頁操作在索引中進行):
  一般表中經常作為條件查詢的列都會建立索引,例如如下查詢
  Sql代碼
  SELECT msg_id, msg_content FROM message ORDER BY gmt_create desc LIMIT 100, 20;
  可以寫成如下方式
  Sql代碼
  SELECT msg_id, msg_content FROM message
  INNER JOIN (
  SELECT msg_id FROM message
  ORDER BY gmt_create LIMIT 100, 20
  ) AS page USING(msg_id);
  這樣當前查詢頁的內容就只會在索引中進行,當得到當前頁的msg_id再統一通過一個INNER JOIN得到最終要得到的數據詳情,避免了對大量數據詳情進行操作的消耗。當然JOIN操作也可以通過子查詢實現,不過書中介紹5.6之前版本的 mysql相比子查詢還是優先使用JOIN。
  優化方法2(顯式指定要查詢的索引列范圍)
  例如方法一中的gmt_create是建立索引的列,而且你也知道要查詢的時間范圍,這樣你就可以通過如下查詢語句:
  Sql代碼
  SELECT msg_id, msg_content FROM message
  WHERE gmt_create BETWEEN #startTime# AND #endTime#
  ORDER BY gmt_create desc
  這樣數據庫通過一個范圍查詢就可以得到想要的數據。
  優化方法3(OFFSET作為查詢條件顯式指定)
  例子還是如上,我們可以在查詢參數中顯式指定一個查詢時間,叫做lastVisitTime吧。我們查詢第一頁可以用如下語句:
  Sql代碼
  SELECT msg_id, msg_content FROM message
  ORDER BY gmt_create desc
  LIMIT 20
  我們把讀出來的數據的最后一條數據的gmt_create字段記錄在lastVisitTime字段中,那么后邊頁的查詢就可以用如下語句實現:
  Sql代碼
  SELECT msg_id, msg_content FROM message
  WHERE gmt_create < #lastVisitTime#
  ORDER BY gmt_create desc
  LIMIT 20;
  這種查詢方式,無論你查詢多少頁,分頁都不會是影響效率的因素。

上述內容就是mysql 中怎么實現limit分頁查詢,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

古丈县| 海阳市| 水城县| 桐柏县| 东阳市| 安平县| 乐至县| 辉县市| 平罗县| 江永县| 沾益县| 宁城县| 德安县| 周至县| 大同市| 运城市| 双牌县| 长顺县| 奇台县| 都安| 辽宁省| 奉化市| 永安市| 九台市| 栾川县| 晋江市| 灵寿县| 轮台县| 阿图什市| 华坪县| 花垣县| 阿拉善右旗| 石河子市| 西吉县| 民县| 隆尧县| 沙坪坝区| 崇阳县| 科技| 沭阳县| 沧源|