欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SqlServer?多種分頁(yè)方式?詳解(含簡(jiǎn)單速度測(cè)試)

 更新時(shí)間:2022年12月16日 09:21:58   作者:沐光之成  
這篇文章主要介紹了SqlServer?多種分頁(yè)方式?(含簡(jiǎn)單速度測(cè)試),附帶50萬(wàn)數(shù)據(jù)分頁(yè)時(shí)間[本機(jī)訪問(wèn)|已重啟SQL服務(wù)|無(wú)其他程序干擾][非索引排序],需要的朋友可以參考下

SQLServer分頁(yè)方式

附帶50萬(wàn)數(shù)據(jù)分頁(yè)時(shí)間[本機(jī)訪問(wèn)|已重啟SQL服務(wù)|無(wú)其他程序干擾][非索引排序]
環(huán)境 WIN7 SQL服務(wù)12.04 SQL管理器SSMS14.01

1.Offset and Fetch 方式分頁(yè)

[SqlServer2012+] OFFSET 起始值 ROWS FETCH NEXT 每頁(yè)條數(shù) ROWS ONLY

1.分頁(yè)條件不能重復(fù),建議使用 分頁(yè)條件+主鍵 一起作為 分頁(yè)參數(shù)
2.分頁(yè)語(yǔ)句中 FIRST=NEXT ROWS=ROW
3.不使用排序可以用 order by (select 1)

使用 OFFSET FETCH 方式分頁(yè)必須帶order by key 其中key 必須是唯一值 不然會(huì)導(dǎo)致錯(cuò)誤

select * from (
select * from sysrizhi 
 ) table_temp order by riqi desc,sysrizhiid desc offset 10 rows fetch next 10 rows only

50萬(wàn)行執(zhí)行時(shí)間 770毫秒 索引排序10毫秒

select * from tcpliushui order by riqi OFFSET 100 ROWS FETCH NEXT 20 ROWS ONLY

2.row_number() 方式分頁(yè)

[SqlServer2005+] row_number()over(order by 已有排序字段)rownumber 然后根據(jù)rownumber篩選

使用方式

select * from (select *, ROW_NUMBER() Over( order by  riqi desc,sysrizhiid desc ) as rowNum from (
select * from sysrizhi 
  ) as table_1  ) as t where t.rowNum>10 and t.rowNum<=20

速度測(cè)試 50萬(wàn)行執(zhí)行時(shí)間 774毫秒 索引排序10毫秒

select * from
(select row_number()over(order by riqi)rownumber,* from tcpliushui )a
where rownumber>100 and rownumber<121

速度測(cè)試 50萬(wàn)行執(zhí)行時(shí)間 777毫秒 索引排序13毫秒

select top 20 * from
(select row_number()over(order by riqi)rownumber,* from tcpliushui)a
where rownumber>100

速度測(cè)試 50萬(wàn)行執(zhí)行時(shí)間 775毫秒 索引排序15毫秒

select * from
(select row_number()over(order by riqi)rownumber,* from tcpliushui)a
where rownumber between 101 and 120

3.row_number()變種

不基于已有字段 [SqlServer2005+]

速度測(cè)試 50萬(wàn)行執(zhí)行時(shí)間 779毫秒 索引排序15毫秒

select *
from (
 select row_number()over(order by tempColumn)rownumber,*
 from (select top 120 tempColumn=0,* from tcpliushui where 1=1 order by riqi)a
)b
where rownumber>100

4.not in/top方式分頁(yè)

速度測(cè)試 50萬(wàn)行執(zhí)行時(shí)間 858毫秒 索引排序51毫秒

select top 20 * from tcpliushui
where tcpliushuiid not in (select top 100 tcpliushuiid from tcpliushui order by riqi)
order by riqi

5.not exists方式分頁(yè)

速度測(cè)試 50萬(wàn)行執(zhí)行時(shí)間 852毫秒 索引排序22毫秒

select top 20 * from tcpliushui
where not exists
(select 1 from (select top 100 tcpliushuiid from tcpliushui order by riqi)a where a.tcpliushuiid=tcpliushui.tcpliushuiid)
order by riqi

6.max/top方式分頁(yè)

速度測(cè)試 50萬(wàn)行執(zhí)行時(shí)間 819毫秒 索引排序12毫秒

select top 20 * from tcpliushui
where tcpliushuiid>(select max(tcpliushuiid) from (select top 100 tcpliushuiid from tcpliushui order by riqi)a)
order by riqi 

到此這篇關(guān)于SqlServer 多種分頁(yè)方式 (含簡(jiǎn)單速度測(cè)試)的文章就介紹到這了,更多相關(guān)SqlServer 分頁(yè)方式內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SQL Server 2012無(wú)法連接到WMI提供程序(Cannot connect to WMI provider)解決方案

    SQL Server 2012無(wú)法連接到WMI提供程序(Cannot connect to WMI provider)解

    這篇文章主要介紹了SQL Server 2012無(wú)法連接到WMI提供程序(Cannot connect to WMI provider)解決方案,需要的朋友可以參考下
    2014-07-07
  • SQL直接操作excel表(查詢/導(dǎo)入/插入)

    SQL直接操作excel表(查詢/導(dǎo)入/插入)

    操作excel表包括:查詢Excel數(shù)據(jù);將Excel的數(shù)據(jù)導(dǎo)入SQL server; 將SQL SERVER中查詢到的數(shù)據(jù)導(dǎo)成一個(gè)Excel文件;在SQL SERVER里往Excel插入數(shù)據(jù),感興趣的你可以參考下哈
    2013-03-03
  • mybatis動(dòng)態(tài)sql常用場(chǎng)景總結(jié)

    mybatis動(dòng)態(tài)sql常用場(chǎng)景總結(jié)

    在平時(shí)開(kāi)發(fā)中針對(duì)動(dòng)態(tài)sql經(jīng)常會(huì)使用到,為了加深對(duì)動(dòng)態(tài)sql的熟練度,小編給大家分享一篇教程關(guān)于mybatis動(dòng)態(tài)sql常用場(chǎng)景總結(jié),需要的朋友可以參考下
    2021-08-08
  • sql server2012附加數(shù)據(jù)庫(kù)問(wèn)題解決方法

    sql server2012附加數(shù)據(jù)庫(kù)問(wèn)題解決方法

    這篇文章主要介紹了sql server2012附加數(shù)據(jù)庫(kù)問(wèn)題解決方法,需要的朋友可以參考下
    2014-05-05
  • SQL 分布式查詢、插入遞增列示例

    SQL 分布式查詢、插入遞增列示例

    SQL 分布式查詢、插入遞增列示例代碼,需要的朋友可以參考下。
    2010-06-06
  • SQL Server索引碎片的原因和修復(fù)

    SQL Server索引碎片的原因和修復(fù)

    索引碎片會(huì)影響數(shù)據(jù)庫(kù)性能,主要有邏輯碎片和物理碎片兩種類型,邏輯碎片導(dǎo)致數(shù)據(jù)頁(yè)順序不連續(xù),而物理碎片影響磁盤讀取性能,解決方法包括重建或重組索引,以及定期維護(hù),下面就一起來(lái)看一下
    2024-09-09
  • [js]javascript與剪貼板交互

    [js]javascript與剪貼板交互

    [js]javascript與剪貼板交互...
    2007-07-07
  • SQLServer更改sa用戶名的方法

    SQLServer更改sa用戶名的方法

    SQLServer更改sa用戶名的方法,需要的朋友可以參考下。
    2010-11-11
  • php使用pdo連接sqlserver示例分享

    php使用pdo連接sqlserver示例分享

    在開(kāi)發(fā)PHP程序時(shí)我們可以借助多種連接方式訪問(wèn)各類的數(shù)據(jù)庫(kù)獲取所需的數(shù)據(jù)。自PHP5以來(lái)PDO作為新生事物將所有數(shù)據(jù)庫(kù)接口收入囊中,為開(kāi)發(fā)人員提供了方便快捷的數(shù)據(jù)庫(kù)讀取方式。本文將介紹如何在Linux服務(wù)器配置PHP與SQL Server的連接
    2014-01-01
  • Sql Server 視圖數(shù)據(jù)的增刪改查教程

    Sql Server 視圖數(shù)據(jù)的增刪改查教程

    這篇文章主要介紹了Sql Server 視圖數(shù)據(jù)的增刪改查教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-01-01

最新評(píng)論