今天遇到一个看似简单却很纠结的问题,但最后还是解决了
我用的是Oracle 根据网上提供的好多都不行,具体贴图
这是登录表的字段,每个用户登录时候会insert用户的ID登录时间
现在用户要显示上次登录的时间该怎么取?
下面是登陆时间的倒叙排列
如果拿最新的登录时间如下所写
但是取上次登录记录(也就是倒叙后的第二条)怎么取? 网上提供好多都是让ROWNUM=2,但是结果却大大出乎意料
竟然是空值,也就是跟没就没取到,但是如果改成ROWNUM<=2 就可以拿到前俩条,下图:
我也很纳闷到底怎么回事,最后只能把取到的2条数据又做了个排序,取的第一条,如图:
这样虽然取出来但是总觉的有些不爽,应该有更可行的方法,希望各路大神给予指点。
另外还有一个疑点是如果直接查 ROWNUM 的结果是下图:
正是因为他不是按照时间的排序来逐步增加的,所以即便让ROWNUM=2 去到了也不对。
希望各路大神指点迷津!!!
转载请标明原著,谢谢!