按用户分组按时间排序存储过程

本文介绍了一个SQL存储过程,用于实现根据用户ID对任务列表进行分组,并支持分页展示。通过复杂的SQL语句实现了高效的数据检索,特别适用于需要对大量数据进行快速分页查询的场景。
create PROCEDURE [dbo].[fanhua_tasklistgroupbyuserid] 
(
@PageIndex int,
    @PageSize int
   )
AS
BEGIN
declare @PageLowerBound int
declare @PageUpperBound int
set @PageLowerBound=(@pageindex-1)*@pagesize
set @PageUpperBound=@PageLowerBound+@pagesize
set rowcount @PageUpperBound
   declare @indextable table (id int identity(1,1),nid int)
   insert  @indextable (nid) select T.id from ( select row_number() over(partition by userid order by addtime desc) as rownum,* from fanhua_task ) as T where T.rownum=1 order by addtime desc
   select b.* from @indextable a, fanhua_task b where b.id =a.nid  and a.id between @PageLowerBound +1 and @PageUpperBound  order by b.addtime desc
end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

哇哈哈AD钙奶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值