1. 程式人生 > >mysql中limit用法詳解

mysql中limit用法詳解

在我們使用查詢語句的時候,經常要返回前幾條或者中間某幾行資料,這個時候怎麼辦呢?不用擔心,mysql已經為我們提供了這樣一個功能,儘管語法邏輯很是怪異。這個功能就好比oracle裡的rownum,但比mysql提供的這個LIMIT好用、好記和好理解多了,呵呵。

SELECT
*
FROM
table  LIMIT [offset,] rows | rows OFFSET offset



LIMIT 子句可以被用於強制 SELECT 語句返回指定的記錄數。LIMIT 接受一個或兩個數字引數。引數必須是一個整數常量。如果給定兩個引數,第一個引數指定第一個返回記錄行的偏移量,第二個引數指定返回記錄行的最大數目。初始記錄行的偏移量是 0(而不是 1): 為了與 PostgreSQL 相容,MySQL 也支援句法: LIMIT # OFFSET #。

mysql>
SELECT
*
FROM
table LIMIT 5,10;  // 檢索記錄行 6-15

//為了檢索從某一個偏移量到記錄集的結束所有的記錄行,可以指定第二個引數為 -1
mysql
>
SELECT
*
FROM
table LIMIT 95,-1; // 檢索記錄行 96-last.

//如果只給定一個引數,它表示返回最大的記錄行數目:
mysql
>
SELECT
*
FROM
table LIMIT 5;     //檢索前 5 個記錄行

//換句話說,LIMIT n 等價於 LIMIT 0,n。