使用查詢語句的時候,經(jīng)常要返回前幾條或者中間某幾行數(shù)據(jù),這個時候怎么辦呢?不用擔(dān)心,mysql已 經(jīng)為我們提供了這樣一個功能。
SELECT?*?FROM?table? LIMIT?[offset,]?rows?|?rows OFFSET offset
LIMIT 子句可以被用于強(qiáng)制 SELECT 語句返回指定的記錄數(shù)。LIMIT 接受一個或兩個數(shù)字參數(shù)。參數(shù)必須是一個整數(shù)常量。如果給定兩個參數(shù),第一個參數(shù)指定第一個返回記錄行的偏移量,第二個參數(shù)指定返回記錄行的最大數(shù)目。初 始記錄行的偏移量是 0(而不是 1): 為了與 PostgreSQL 兼容,MySQL 也支持句法: LIMIT # OFFSET #。
limit和offset用法
mysql里分頁一般用limit來實現(xiàn)
1. select* from article LIMIT 1,3
2.select * from article LIMIT 3 OFFSET 1
上面兩種寫法都表示取2,3,4三條條數(shù)據(jù)
mysql>?SELECT?*?FROM?table?LIMIT?5,10;??//?檢索記錄行?6-15
//為了檢索從某一個偏移量到記錄集的結(jié)束所有的記錄行,可以指定第二個參數(shù)為?-1:?
mysql
>?SELECT?*?FROM?table?LIMIT?95,-1;?//?檢索記錄行?96-last.
//如果只給定一個參數(shù),它表示返回最大的記錄行數(shù)目:?
>?SELECT?*?FROM?table?LIMIT?5;?????//檢索前?5?個記錄行
//換句話說,LIMIT n 等價于 LIMIT?0,n。
實例:
mysql> select * from employee;?// 返回所有結(jié)果
mysql> select * from employee limit 3, 7;?// 返回4-11行
mysql> select * from employee limit 3,-1;?// 錯誤語法
mysql> select * from employee limit 3,1;?// 返回第4行
mysql> select * from employee limit 3;?// 返回前3行
mysql> select * from employee limit 10;?// 返回前10行
mysql> select * from employee limit 9,1;?// 返回第10行