SQL Server无主键分页


declare @start int,@end int;

select convert(varchar,StartTime,120) as StartTime,SessionId,UserId from(
	select * from (
		select ROW_NUMBER() over (order by StartTime desc) as sno,* from(
			select distinct a.SessionId,b.StartTime,b.UserId from Verification.VerificationResult as a
			left join Task.Session as b on a.SessionId = b.SessionId
		) as C
	) as D
	where sno between @start and @end
) as Q

其中还需要再结果集中LEFT JOIN 另一个表,测试查询10条数据,需要5秒,比使用临时表略快0.1,总体性能还有待更好的办法解决。Sql Server没有MySQL的limit真是不方便。

转载于:https://my.oschina.net/biejun/blog/1529807

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值