Oracle 分页方法 (C# 使用)

/// 
        ///分页sql
        /// 
        /// 查询内容的sql
        /// 排序字段(降序),必须是查出的某个字段
        /// 页码
        /// 每页的数量
        /// 
        public static string SqlToPage(string sql, string order, int pageNumebr, int pageSize)
        {
            string psql = @"select * from(
                                        SELECT * FROM(
                                                    select row_number() OVER(order by Q." + order + @" desc) ROWIDS, Q.*, COUNT(*) OVER() TOTAL from(" + sql + @") Q
                                                     )
                                        WHERE ROWIDS <= " + (pageNumebr * pageSize) + @") TABS
                            WHERE TABS.ROWIDS > " + (pageNumebr - 1) * pageSize;
            return psql;

        }
string sql="select name,id,time from table1"
SqlToPage(sql,"time",1,10);

 

你可能感兴趣的:(Oracle 分页方法 (C# 使用))