加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQL Server在分页获取数据的一同获取到总记录数的两种方法

发布时间:2023-07-13 15:19:41 所属栏目:MsSql教程 来源:
导读:本文通过两种方法给大家介绍SQL Server 在分页获取数据的同时获取到总记录数,感兴趣的朋友跟随脚本之家小编一起学习吧。

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

1.先分页获取数据,然后再查询一遍数
本文通过两种方法给大家介绍SQL Server 在分页获取数据的同时获取到总记录数,感兴趣的朋友跟随脚本之家小编一起学习吧。
 
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没有这个效果,大家如果发现其他的可以使用
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章