首頁 資料庫 mysql教程 MySQL与分页_MySQL

MySQL与分页_MySQL

Jun 01, 2016 pm 02:00 PM
優雅

如果和MSSQL的TOP语法相比,那么MySQL的LIMIT语法要显得优雅了许多。使用它来分页是再自然不过的事情了。

  最基本的分页方式:

  SELECT ... FROM ... WHERE ... ORDER BY ... LIMIT ...

  在中小数据量的情况下,这样的SQL足够用了,唯一需要注意的问题就是确保使用了索引:

  举例来说,如果实际SQL类似下面语句,那么在category_id, id两列上建立复合索引比较好:

SELECT * FROM articles WHERE category_id = 123 ORDER BY id LIMIT 50, 10

  子查询的分页方式:

  随着数据量的增加,页数会越来越多,查看后几页的SQL就可能类似:

SELECT * FROM aricles WHERE category_id = 123 ORDER BY id LIMIT 10000, 10

  一言以蔽之,就是越往后分页,LIMIT语句的偏移量就会越大,速度也会明显变慢。

  此时,我们可以通过子查询的方式来提高分页效率,大致如下:

SELECT * FROM articles WHERE category_id = 123 AND id >= (
  SELECT id FROM articles ORDER BY id LIMIT 10000, 1
) LIMIT 10

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1422
52
Laravel 教程
1316
25
PHP教程
1267
29
C# 教程
1239
24
如何優雅地使用Go和context進行錯誤處理 如何優雅地使用Go和context進行錯誤處理 Jul 21, 2023 pm 11:37 PM

如何優雅地使用Go和context進行錯誤處理在Go程式設計中,錯誤處理是一項非常重要的任務。優雅地處理錯誤可以提高程式碼的可讀性、可維護性和穩定性。而Go語言的context套件則為我們提供了一個非常方便的方式來處理與錯誤相關的操作。本文將介紹如何優雅地使用Go和context進行錯誤處理,並提供相關的程式碼範例。引言Go語言的錯誤處理機制是透過傳回錯誤值的方式來實

Laravel框架介紹:優雅的PHP開發新選擇 Laravel框架介紹:優雅的PHP開發新選擇 Aug 13, 2023 am 08:46 AM

Laravel框架介紹:優雅的PHP開發新選擇引言:在過去的幾年中,PHP開發領域一直在不斷發展和壯大。而在眾多PHP框架中,Laravel無疑是一款備受矚目的框架之一。它以其清晰簡潔的語法、全面的功能和卓越的性能而受到開發者的喜愛。本文將向你介紹Laravel框架的基本特點,並透過程式碼範例展示其靈活和優雅的開發風格。一、Laravel框架的特色1.優雅的代

PyCharm技巧:優雅處理程式碼自動換行問題 PyCharm技巧:優雅處理程式碼自動換行問題 Feb 23, 2024 pm 04:18 PM

PyCharm技巧:優雅處理程式碼自動換行問題在使用PyCharm進行Python程式設計的過程中,經常會遇到程式碼自動換行的問題,特別是當一行程式碼過長時,自動換行可能會影響程式碼的可讀性和美觀性。如何優雅地處理這個問題,讓程式碼更加整潔易讀呢?本文將介紹一些在PyCharm中處理程式碼自動換行問題的技巧,並透過具體的程式碼範例來示範。 1.使用反斜線()在Python中

PHP開發者必讀:Switch語句如何優雅不使用Break? PHP開發者必讀:Switch語句如何優雅不使用Break? Mar 28, 2024 pm 05:48 PM

PHP語言中的switch語句是一種用來根據不同條件執行不同程式碼區塊的控制流程結構,通常情況下,每個case語句執行完畢後會使用break語句來跳出switch語句。但有時候,我們想要在不使用break的情況下繼續執行下一個case或多個case,本文將介紹如何優雅地在PHP開發中使用switch語句而不需要使用break語句。首先,我們來看一個簡單的swit

PHP 錯誤處理:如何優雅地處理錯誤訊息 PHP 錯誤處理:如何優雅地處理錯誤訊息 Aug 07, 2023 pm 10:05 PM

PHP錯誤處理:如何優雅地處理錯誤訊息導言:在編寫PHP程式碼時,錯誤處理是一個非常重要的面向。無論是開發新應用程式還是維護舊有程式碼,都需要考慮如何處理錯誤訊息。正確地處理錯誤訊息可以提高應用程式的健壯性和可維護性。本文將介紹一些優雅地處理PHP錯誤訊息的方法,並提供程式碼範例。錯誤報告的設定在PHP中,可以透過設定錯誤報告等級來決定如何處理錯誤信

如何在VSCode中優雅地使用框架? 如何在VSCode中優雅地使用框架? Mar 25, 2024 pm 09:12 PM

在當今軟體開發領域,框架是開發者不可或缺的利器之一。它能夠幫助開發者快速建立應用程序,提高開發效率,降低開發成本。而作為一款流行且強大的程式碼編輯器,VisualStudioCode(簡稱VSCode)與各種框架的結合使用,能夠為開發者提供更有效率、便利的開發體驗。選擇適合自己專案的框架在使用框架之前,首先需要根據自己的專案需求和技術堆疊選擇適合的框架。常

PHP 異常處理:優雅地處理程式中的錯誤 PHP 異常處理:優雅地處理程式中的錯誤 Aug 08, 2023 am 08:57 AM

PHP異常處理:優雅地處理程式中的錯誤引言:在開發過程中,程式中難免會出現各種各樣的錯誤。這些錯誤可能是由於使用者輸入不正確、伺服器配置錯誤、資料庫連線問題等等所造成的。為了確保程序的穩定性和可靠性,我們需要對這些錯誤進行正確的處理。 PHP異常處理機制提供了一種優雅且有效的方式來處理程式中的錯誤。本文將詳細介紹PHP異常處理的原理與實踐,並提供一些程式碼示

優雅的PHP部署:利用Deployer提升開發效率 優雅的PHP部署:利用Deployer提升開發效率 Jul 12, 2023 pm 01:55 PM

優雅的PHP部署:利用Deployer提升開發效率在Web開發中,部署是一個非常重要的環節。傳統的部署方式通常是手動複製檔案、執行指令等繁瑣的操作,不僅容易出錯,而且效率低。而如今,有了自動化部署工具的幫助,我們可以輕鬆完成部署工作,提升開發效率。本文將介紹一款優雅的PHP部署工具-Dep​​loyer,並透過程式碼範例示範如何使用這個工具來進行自動化部署。

See all articles