首页 > 代码库 > 查询用户上次登录时间问题

查询用户上次登录时间问题

今天遇到一个看似简单却很纠结的问题,但最后还是解决了

我用的是Oracle  根据网上提供的好多都不行,具体贴图

技术分享

这是登录表的字段,每个用户登录时候会insert用户的ID登录时间

现在用户要显示上次登录的时间该怎么取?

下面是登陆时间的倒叙排列

技术分享

 如果拿最新的登录时间如下所写

 技术分享

但是取上次登录记录(也就是倒叙后的第二条)怎么取? 网上提供好多都是让ROWNUM=2,但是结果却大大出乎意料

技术分享

竟然是空值,也就是跟没就没取到,但是如果改成ROWNUM<=2 就可以拿到前俩条,下图:

技术分享

我也很纳闷到底怎么回事,最后只能把取到的2条数据又做了个排序,取的第一条,如图:

技术分享

这样虽然取出来但是总觉的有些不爽,应该有更可行的方法,希望各路大神给予指点。

另外还有一个疑点是如果直接查 ROWNUM 的结果是下图:

技术分享

正是因为他不是按照时间的排序来逐步增加的,所以即便让ROWNUM=2 去到了也不对。

希望各路大神指点迷津!!!

转载请标明原著,谢谢!

 

查询用户上次登录时间问题