SQL分頁


SQL分頁很多人都碰到過,把項目中感覺比較方便的案例拿出來給大家分享下

string sql = SqlSplitPage(strSql.ToString(), pageIndex, pageSize, " TIME asc ");

        /// <summary>
        /// SQL分頁
        /// </summary>
        /// <param name="strSql">查詢SQL</param>
        /// <param name="pageIndex">第幾頁</param>
        /// <param name="pageSize">每頁多少條</param>
        /// <param name="orderColumn">排序字段</param>
        /// <returns></returns>
        public string SqlSplitPage(string strSql, int pageIndex, int pageSize, string orderColumn)
        {
            string SqlSplit = string.Format(@" SELECT * FROM 
                                            ( SELECT ROW_NUMBER() OVER(ORDER BY {1} ) ROWNU, TB.* FROM ({0}) TB ) A 
                                            WHERE 1=1 ",
                                strSql,
                                orderColumn
                              );
            string dataSql = string.Format(@" {0} AND ROWNU BETWEEN {1} AND {2} ", SqlSplit, (pageIndex - 1) * pageSize + 1, pageIndex * pageSize);
            return dataSql;
        

千萬數據  一頁顯示二十條   在sql server 查詢時間是 18 19秒


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM