mysql 分頁查詢語句資料庫查詢

2021-06-20 18:37:03 字數 1424 閱讀 6970

sql server

關於分頁 sql 的資料許多,有的使用儲存過程,有的使用游標。本人不喜歡使用游標,我覺得它耗資、效率低;使用儲存過程是個不錯的選擇,因為儲存過程是顛末預編譯的,執行效率高,也更靈活。先看看單條 sql 語句的分頁 sql 吧。

方法1:

適用於 sql server 2000/2005

select top 頁大小 * from table1 where id not in ( select top 頁大小*(頁數-1) id from table1 order by id ) order by id

方法2:

適用於 sql server 2000/2005

select top 頁大小 * from table1 where id > ( select isnull(max(id),0) from ( select top 頁大小*(頁數-1) id from table1 order by id ) a ) order by id

方法3:

適用於 sql server 2005

select top 頁大小 * from ( select row_number() over (order by id) as rownumber,* from table1 ) a where rownumber > 頁大小*(頁數-1)

說明,頁大小:每頁的行數;頁數:第幾頁。使用時,請把「頁大小」以及「頁大小*(頁數-1)」替換成數碼。

mysql

select * from tt limit 1,20

select * from tt limit 21,30

/*如果你是幾千上萬資料,就直接使用mysql自帶的函式 limit的普通用法就ok了,如果是100萬以上的資料,可能就要講方法了,下面我們來做個百萬級資料的分頁查詢語句.

mysql> select * from news where id>=(select id from news limit 490000,1) limit 10;    sec  //很 明顯,這 種方式勝出 .

mysql> select * from news limit 490000,10  sec;

*/以下的文章主要介紹的是mysql分頁的實際操作方案,其實關於實現mysql分頁的最簡單的方法就是利用利用mysql資料庫的limit函式,limit [offset,] rows可以從mysql資料庫表中第m條記錄開始檢索n條記錄的語句為:

select * from 表名稱 limit m,n 

例如從表sys_option(主鍵為sys_id)中從第10條記錄開始檢索20條記錄,語句如下:

select * from sys_option limit 10,20  

select * from table [查詢條件] order by id limit ?,?

oracle

mysql語句 資料庫去重

就簡單寫乙個例項 資料庫表結構 create table service id bigint 20 not null auto increment,aa varchar 255 default null comment 說明 bb varchar 255 not null comment 方法名 p...

資料庫學習 mysql 分頁查詢語句

單條 sql 語句的分頁 sql 方法1 適用於 sql server 2000 2005 select top 頁大小 from table1 where id not in select top 頁大小 頁數 1 id from table1 order by id order by id 方法...

資料庫 SQL語句 資料定義

第一行 咕咕咕。在學資料庫,語句不好記,整理一下。1.定義 create schema 模式名 authorization 使用者名稱 若未指定模式名,則模式名隱含為使用者名稱 2.刪除 drop schema 模式名 cascade表示該模式下全部刪除,restrict模式中沒有下屬物件才能執行。...