真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

mysql分頁查詢語句的具體用法

這篇文章主要講解了“MySQL分頁查詢語句的具體用法”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“mysql分頁查詢語句的具體用法”吧!

專注于為中小企業(yè)提供網(wǎng)站設(shè)計制作、做網(wǎng)站服務(wù),電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)安州免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。

SQL Server
關(guān)于分頁 SQL 的資料許多,有的使用存儲過程,有的使用游標(biāo)。本人不喜歡使用游標(biāo),我覺得它耗資、效率低;使用存儲過程是個不錯的選擇,因為存儲過程是顛末預(yù)編譯的,執(zhí)行效率高,也更靈活。先看看單條 SQL 語句的分頁 SQL 吧。
方法1:
適用于 SQL Server 2000/2005
SELECT TOP 頁大小 * FROM table1 WHERE id NOT IN ( SELECT TOP 頁大小*(頁數(shù)-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 頁大小*(頁數(shù)-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 > 頁大小*(頁數(shù)-1)
說明,頁大?。好宽摰男袛?shù);頁數(shù):第幾頁。使用時,請把“頁大小”以及“頁大小*(頁數(shù)-1)”替換成數(shù)碼。

MYSQL
SELECT * FROM TT LIMIT 1,20
SELECT * FROM TT LIMIT 21,30
/*
如果你是幾千上萬數(shù)據(jù),就直接使用mysql自帶的函數(shù) limit的普通用法就ok了,如果是100萬以上的數(shù)據(jù),可能就要講方法了,下面我們來做個百萬級數(shù)據(jù)的分頁查詢語句.
mysql> select * from news where id>=(select id from news limit 490000,1) limit 10;    //0.18 sec  //很 明顯,這 種方式勝出 .
mysql> select * from news limit 490000,10  //0.22 sec;
*/
以下的文章主要介紹的是MySQL分頁的實際操作方案,其實關(guān)于實現(xiàn)MySQL分頁的最簡單的方法就是利用利用mysql的LIMIT函數(shù),LIMIT [offset,] rows可以從MySQL數(shù)據(jù)庫表中第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的分頁查詢語句基本上可以按照這篇了,下一篇文章會通過例子來申述。下面簡單討論一下多表聯(lián)合的情況。對最多見的等值表連接查詢,CBO 一般可能會采用兩種連接方式NESTED LOOP以及HASH JOIN(MERGE JOIN效率比HASH JOIN效率低,一般CBO不會考慮)。在這里,由于使用了分頁,因此指定了一個歸回的最大記載數(shù),NESTED LOOP在歸回記載數(shù)跨越最大值時可以頓時遏制并將結(jié)果歸回給中心層,而HASH JOIN必需處理完所有成集(MERGE JOIN也是)。那么在大部分的情況下,對分頁查詢選擇NESTED LOOP作為查詢的連接方法具有較高的效率(分頁查詢的時候絕大部分的情況是查詢前幾頁的數(shù)據(jù),越靠后面的頁數(shù)訪問概率越?。?。
因此,如果不介意在體系中使用HINT的話,可以將分頁的查詢語句改寫為:
SELECT /*+ FIRST_ROWS */ * FROM
(
SELECT A.*, ROWNUM RN
FROM (SELECT * FROM TABLE_NAME) A
WHERE ROWNUM <= 40
)
WHERE RN >= 21

感謝各位的閱讀,以上就是“mysql分頁查詢語句的具體用法”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對mysql分頁查詢語句的具體用法這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!


文章標(biāo)題:mysql分頁查詢語句的具體用法
當(dāng)前鏈接:http://weahome.cn/article/pddgje.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部