您的位置:首页 > 数据库

拼接、获取分页Sql语句

2011-06-17 21:00 330 查看
/// <summary>
/// 分页记录总数Sql
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static string GetPagingCountSql(string sql)
{
string pagingCountSql = "SELECT COUNT(*) FROM ({0}) t";

return string.Format(pagingCountSql, sql);
}

/// <summary>
/// 分页Sql
/// </summary>
/// <param name="sql"></param>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="orderBy"></param>
/// <returns></returns>
public static string GetPagingSql(string sql, int pageIndex, int pageSize, string orderBy)
{
string pagingSql = string.Format("select Row_Number() over (order by {1}) Seq_RowNum, t.* from ({0}) t", sql,orderBy);
int startIndex = (pageIndex - 1) * pageSize + 1;
int endIndex = startIndex + pageSize + 1;

pagingSql = string.Format("select * from ({0}) T_RowNum where Seq_RowNum>={1} and Seq_RowNum<{2}",
pagingSql, startIndex, endIndex);

return pagingSql;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: