SQL Server 在分页获取数据的同时获取到总记录数

2018/5/28 10:33:48 人评论 次浏览 分类:MSSQLSERVER

SQL Server 获取数据的总记录数,有两种方式:

1.先分页获取数据,然后再查询一遍数据库获取到总数量

2.使用count(1) over()获取总记录数量

SELECT
  *
FROM
  (
  SELECT
    ROW_NUMBER() OVER(ORDER BY Id DESC) rn,  
    COUNT(1) OVER() AS TotalCount,
    Id
  FROM
    dbo.T_User
  )a
WHERE
  a.rn BETWEEN 1 AND 5

第二种方式既分页还能获取到总记录数量。就是多一个字段,如果获取一次数据较多的话,会浪费一些流量。

如果使用第一种的话,会多访问一次数据库,增加一次数据连接的关闭和打开,会消耗数据库资源。

第二种方式还是我同事开始使用的,然后我们就这样使用了。

注意:目前发现只有sqlserver有,mysql没有这个效果,大家如果发现其他的可以使用

总结

以上所述是小编给大家介绍的SQL Server 在分页获取数据的同时获取到总记录数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

您可能感兴趣的文章:

  • Oracle、MySQL和SqlServe三种数据库分页查询语句的区别介绍
  • Android操作SQLite数据库(增、删、改、查、分页等)及ListView显示数据的方法详解
  • jQuery+Ajax+PHP+Mysql实现分页显示数据实例讲解
  • oracle,mysql,SqlServer三种数据库的分页查询的实例
  • MSSQL MySQL 数据库分页(存储过程)
  • MySQL数据库查看数据表占用空间大小和记录数的方法
  • sql 查询记录数结果集某个区间内记录
  • MYSQL速度慢的问题 记录数据库语句
  • SQL小技巧 又快又简单的得到你的数据库每个表的记录数
分享到: 腾讯 新浪 人人网 邮件 收藏夹 复制网址 更多

上一篇:SQL 在自增列插入指定数据的操作方法

下一篇:使用SQL语句去掉重复的记录【两种方法】

相关知识


共有访客发表了评论 网友评论

验证码: 看不清楚?