久久机这里只有精品,国产69精品一区二区亚洲孕妇,91精品国产综合久久婷婷香蕉,午夜久久久久久电影

最新活動:電腦PC端+手機端+微網站+自適應網頁多模板選擇-建站388元起價!??!
當前位置:主頁 > 網站建設 > MSSQL MySQL 數據庫分頁(存儲過程)建站知識

MSSQL MySQL 數據庫分頁(存儲過程)建站知識

時間:2023-05-22 08:05:22 閱讀: 文章分類: 網站建設 作者: 網站編輯員

導讀:1建站知識有關分頁 SQL 的資料很多,有的使用存儲過程,有的使用游標。本人不喜歡使用游標,我覺得它耗資、效率低;使用存seo網站關鍵詞優化個業網站建設公司。

seo網站關鍵詞優化個業網站建設公司先看看單條 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 頁大小 網站優化seo培訓* FROM ( SELECT ROW_NUMBER() OVER (ORDER BY id) AS RowNumber,* FROM table1 ) A WHERE RowNumber > 頁大小*(頁數-1)

方法4: 適用于 SQL Server 2005

復制代碼 代碼如下:

row_number() 必須制定 order by ,不指定可以如下實現,但不能保證分頁結果正確性,因為排序不一定可靠。可能第一次查詢記錄A在第一頁,第二次查詢又跑到了第二頁。 declare @PageNo int ,@pageSize int; set @PageNo = 2 set @pageSize=20 select * from ( select row_number() over(order by getdate()) rn,* from sys.objects) tb where rn >(@PageNo-1)*@pageSize and rn <=@PageNo*@pageSize

還有一種方法就是將排序字段作為變量,通過動態SQL 實現,可以改成存儲過程。

復制代碼 代碼如下:

declare @PageNo int ,@pageSize int; declare @TableName varchar(128),@OrderColumns varchar(500), @SQL varchar(max); set @PageNo = 2 set @pageSize=20 set @TableName = 'sys.objects' set @OrderColumns = 'name ASC,object_id DESC' set @SQL = 'select * from ( select row_number() over(order by '+@OrderColumns+' ) rn,* from ' +@TableName+')tb where rn >'+convert(varchar(50),(@PageNo-1)*@pageSize) +' and rn <= '+convert(varchar(50),@PageNo*@pageSize) print @SQL exec(@SQL)

方法5:(利用SQL的游標存儲過程分頁) 適用于 SQL Server 20網站建設教程05

復制代碼 代碼如下:

create procedure SqlPager @sqlstr nvarchar(4000), --查詢字符串 @currentpage int, --第N頁 @pagesize int --每頁行數 as set nocount on declare @P1 int, --P1是游標的id @rowcount int exec sp_cursoropen @P1 output,@sqlstr,@scrollopt=1,@ccopt=1,@rowcount=@rowcount output select ceiling(1.0*@rowcount/@pagesize) as 總頁數--,@rowcount as 總行數,@currentpage as 當前頁 set @currentpage=(@currentpage-1)*@pagesize+1 exec sp_cursorfetch @P1,16,@currentpage,@pagesize exec sp_cursorclose @P1 set nocount off

方法5:(利用MySQL的limit) 適用于 MySQL mysql中limit的用法詳解[數據分頁常用] 在我們使用查詢語句的時候,經常要返回前幾條或者中間某幾行數據,這個時候怎么辦呢?不用擔心,mysql已經為我們提供了這樣一個功能。

關鍵詞標簽: 分頁 SQL 存儲過程

聲明: 本文由我的SEOUC技術文章主頁發布于:2023-05-22 ,文章MSSQL MySQL 數據庫分頁(存儲過程)建站知識主要講述分頁,存儲過程,SQL網站建設源碼以及服務器配置搭建相關技術文章。轉載請保留鏈接: http://www.bifwcx.com/article/web_4145.html

我的IDC 網站建設技術SEOUC.COM
專注網站建設,SEO優化,小程序設計制作搭建開發定制網站等,數千家網站定制開發案例,網站推廣技術服務。
  • 5000+合作客服
  • 8年從業經驗
  • 150+覆蓋行業
  • 最新熱門源碼技術文章

    主站蜘蛛池模板: 三穗县| 保定市| 凤城市| 大渡口区| 九寨沟县| 日照市| 文登市| 庆元县| 克什克腾旗| 天津市| 长寿区| 龙胜| 靖边县| 揭阳市| 平山县| 南阳市| 呼伦贝尔市| 阿瓦提县| 清流县| 镇坪县| 巩留县| 丰县| 慈利县| 周至县| 尉犁县| 霍林郭勒市| 宁波市| 遂溪县| 连平县| 安乡县| 漠河县| 肇州县| 军事| 中西区| 临夏市| 大悟县| 龙海市| 开平市| 塔城市| 新泰市| 腾冲县|