與oracle和ms sqlserver相比,mysql的分頁方法簡單的讓人想哭。
--語法:select
*from
table limit [
offset,
] rows |
rows offset offset
--舉例:
select
*from
table limit 5; --
返回前5行
select
*from
table limit 0,5; --
同上,返回前5行
select
*from
table limit 5,10; --
返回6-15行
當乙個查詢語句偏移量offset很大的時候,如select * from table limit 10000,10 , 最好不要直接使用limit,而是先獲取到offset的id後,再直接使用limit size來獲取資料。效果會好很多。
如:
select*from customers where customer_id >=
(select customer_id from customers order
by customer_id limit 10000,1
) limit
10;
語法:
selecttopnumber
|percent column_name(s) from table_name;
舉例:1. 選取表中前2條記錄
selecttop2 * from
table;
2. 選取表中50%的記錄
selecttop50 persent
from
table;
3. 從資料庫中檢索第10—20條記錄
selecttop10
*from
testtable
where (id notin(
select
top20
idfrom
testtable
order
byid))
order
by id;
語法:
select column_name(s) from table_name where rownum <=number
舉例:1. 選取前5條記錄
select * from persons whererownum<= 5
分頁:
--從資料庫表中第m條記錄開始檢索n條記錄
select
*from (select rownum r,t1.*
from 表名稱 t1 where rownum < m +
n) t2
where t2.r >=m--
如:從表sys_option(主鍵為sys_id)中從第10條記錄開始檢索20條記錄,語句如下
select
*from (select rownum r,t1.*
from sys_option where rownum <
30) t2
where t2.r >=
10
Mysql分頁之limit用法與limit優化
與oracle和ms sqlserver相比,mysql的分頁方法簡單的讓人想哭。語法 select from table limit offset,rows rows offset offset 舉例 select from table limit5 返回前5行 select from table...
Mysql 分頁語句limit的用法
一 在我們使用查詢語句的時候,有時會需要返回查詢結果的前幾條或中間幾天資料,此時我們就可以使用mysql的limit分頁語句 語句原型如下 select from table limit offset,rows rows offset offset limit接受乙個或兩引數,並且都必須是整型常量 ...
Mysql之limit用法總結
limit 子句可以被用於強制 select 語句返回指定的記錄數。limit 接受乙個或兩個數字引數,引數必須是乙個整數常量。如果給定兩個引數,第乙個引數指定第乙個返回記錄行的偏移量,第二個引數指定返回記錄行的最大數目。初始記錄行的偏移量是 0 而不是 1 為了與 postgresql 相容,my...