db2 如何获取1-5、5-10条记录

db2 如何获取1-5、5-10条记录,第1张

假设你的表名字为t1,其中有一个字段为id,你打算按照id的升序排列,依次显示1-5条、6-10条等

SELECT * FROM

(SELECT *, ROW_NUMBER() OVER(ORDER BY id) as r FROM t1)

WHERE r BETWEEN 1 AND 5

ORDER BY id

需要显示第m到第n条,只需替换BETWEEN和AND后面的数即可。

前5次,应该是按时间排序,不区分打卡地点,对吧?!

使用OLAP函数就能解决问题啦:

select * from (

select

(row_number() over (partition by 用户ID order by 打卡时间 asc)) AS row_id

用户ID,

打卡地点ID,

打卡时间

from table_name) t

where row_id<=5


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10013262.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存