自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

不同數(shù)據(jù)庫(kù)分頁(yè)技術(shù)的實(shí)現(xiàn)及高效率分頁(yè)技術(shù)三方案

數(shù)據(jù)庫(kù)
當(dāng)瀏覽的數(shù)據(jù)量較大時(shí),分頁(yè)顯示是個(gè)非常實(shí)用的方法。本文主要介紹了不同數(shù)據(jù)庫(kù)中分頁(yè)技術(shù)的實(shí)現(xiàn)以及能夠提高效率的分頁(yè)技術(shù)的三個(gè)方案,希望能夠?qū)δ兴鶐椭?/div>

數(shù)據(jù)庫(kù)分頁(yè)技術(shù)能夠幫助瀏覽者更好的查看信息,不同數(shù)據(jù)庫(kù)實(shí)現(xiàn)分頁(yè)時(shí)的方法也各有不同。本文我們主要介紹幾種不同數(shù)據(jù)庫(kù)分頁(yè)顯示的實(shí)現(xiàn)方法以及高效率分頁(yè)技術(shù)的三個(gè)方案,接下來(lái)我們就開(kāi)始介紹。

不同數(shù)據(jù)庫(kù)分頁(yè)技術(shù)的實(shí)現(xiàn)代碼:

1.Oracle:select * from ( select row_.*, rownum rownum_ from ( query_SQL ) row_ where rownum =< max) where rownum_ >= min

2.SQL Server:select top @pagesize * from tablename where id not in (select top @pagesize*(@page-1) id from tablename order by id) order by id

3.MySQL:select * from tablename limit position, counter

4.DB2:select * from (select *,rownumber() as ROW_NEXT from tablename) where ROW_NEXT between min and max

高效率的分頁(yè)技術(shù)三方案:

1.分頁(yè)方案一:(利用Not In和SELECT TOP分頁(yè))效率次之

語(yǔ)句形式:

 

 

  1. SELECT TOP 10 * FROM TestTable  
  2.  
  3. WHERE(ID NOT IN (SELECT TOP 20  id FROM  TestTable  ORDERBY  id))   ORDERBYID  
  4.  
  5. SELECT  TOP 頁(yè)大小 * FROM TestTable  
  6.  
  7. WHERE( ID NOT IN (SELECT  TOP  每頁(yè)大小-1*待查詢頁(yè)數(shù)-1  id  FROM  表 ORDERBY  id)) ORDERBYID 

 

思路:先查詢出待查詢頁(yè)之前的全部條數(shù)的id,查詢ID不在這些ID中的指定數(shù)量條數(shù)。

2.分頁(yè)方案二:(利用ID大于多少和SELECT TOP分頁(yè))效率最高

語(yǔ)句形式:

 

  1. SELECT  TOP  10 *   FROM  TestTable  
  2.  
  3. WHERE(ID>(SELECT MAX(id) FROM(SELECT TOP20 id  FROM  TestTable ORDERBYid)AS T))ORDERBY ID  
  4.  
  5. SELECT  TOP  頁(yè)大小* FROM  TestTable  
  6.  
  7. WHERE(ID>(SELECT MAX(id) FROM(SELECT TOP 每頁(yè)大小*待查詢頁(yè)數(shù)-1  id FROM 表  ORDERBY id)AS T)) ORDERBY ID 

 

思路:先獲得待查詢頁(yè)的之前全部條數(shù)id,獲得它們當(dāng)中最大的ID號(hào),以此最大ID號(hào)為標(biāo)志,查找比這個(gè)ID號(hào)大的指定條數(shù)。

3.分頁(yè)方案三:

 

  1. SELECT TOP PageSize * FROM(SELECT TOP nPage*PageSize * from YOURTABLE order by id)as a order by id desc  
  2.  
  3. SELECT TOP 每頁(yè)條數(shù) * FROM (SELECT TOP 待查詢頁(yè)*每頁(yè)條數(shù)) * from YOURTABLE order by id)as a order by id desc 

 

思路:先正排序查詢出待查詢頁(yè)之前(包括當(dāng)前頁(yè))的全部條數(shù),然后將其倒排序,取指定條數(shù)。

關(guān)于不同數(shù)據(jù)庫(kù)分頁(yè)技術(shù)的實(shí)現(xiàn)方案以及高效率的分頁(yè)技術(shù)三方案的介紹就到這里了,希望本次的介紹能夠帶給您一些收獲,謝謝!

【編輯推薦】

  1. Oracle數(shù)據(jù)庫(kù)如何創(chuàng)建對(duì)象類(lèi)型和對(duì)象類(lèi)型表
  2. Oracle數(shù)據(jù)庫(kù)遠(yuǎn)程連接設(shè)置的四種方法及其注意事項(xiàng)
  3. SQL Server數(shù)據(jù)庫(kù)如何按百分比查詢出表中的記錄數(shù)
  4. Oracle數(shù)據(jù)庫(kù)如何查看當(dāng)前用戶角色權(quán)限及默認(rèn)表空間
  5. MySQL數(shù)據(jù)庫(kù)中COUNT(*)和DISTINCT的使用及效率研究
責(zé)任編輯:趙鵬 來(lái)源: 博客園
相關(guān)推薦

2011-08-05 13:29:04

分頁(yè)

2011-08-15 10:22:19

分頁(yè)查詢數(shù)據(jù)庫(kù)

2012-07-23 14:30:33

Oracle

2009-08-04 14:23:36

ASP.NET查詢分頁(yè)

2010-07-05 09:14:37

SQL Server數(shù)

2016-08-02 11:03:22

數(shù)字 系列

2010-05-13 10:47:44

MySQL數(shù)據(jù)庫(kù)查詢

2010-05-21 13:48:36

MySQL數(shù)據(jù)庫(kù)

2010-06-11 12:32:57

MySQL數(shù)據(jù)庫(kù)查詢

2010-06-17 09:15:02

MySQL數(shù)據(jù)庫(kù)查詢

2011-08-29 10:55:03

SQL Server分頁(yè)存儲(chǔ)過(guò)程優(yōu)化效率分

2010-05-18 16:58:31

MySQL數(shù)據(jù)庫(kù)

2024-07-25 09:15:39

2010-04-22 16:00:45

Oracle數(shù)據(jù)庫(kù)

2010-05-27 18:36:13

配置MySQL

2010-09-06 11:40:06

SqlServer語(yǔ)句

2009-05-15 10:11:55

數(shù)據(jù)庫(kù)查詢查詢性能分頁(yè)瀏覽

2011-04-19 11:02:57

數(shù)據(jù)庫(kù)分頁(yè)

2010-07-01 12:44:52

SQL Server數(shù)

2010-06-01 17:14:28

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)