一个oracle sql问题,高手帮忙解决

halupipi 2009-10-16 10:33:11
问题:
有一个日志表(log)
字段:
用户名(username)
日志时间(logtime)
日志内容(logcontent)


请问:我现在需要查出每位用户最新 或某个时间段最新的日志信息,如何写sql语句呢?
...全文
87 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
liu498097420 2009-10-16
  • 打赏
  • 举报
回复
对与每组username按logtime降序排序
halupipi 2009-10-16
  • 打赏
  • 举报
回复
3楼的答案我试过了,可行,非常感谢,分给你了。
你能随便讲讲中间的子查询dense_rank()over(partition by username order by logtime desc)
是什么意思吗?
小灰狼W 2009-10-16
  • 打赏
  • 举报
回复
某个时间段的就更简单了
select * from log
where logtime between to_date('2009-8-1','yyyy-mm-dd') and to_date('2009-10-1','yyyy-mm-dd')
halupipi 2009-10-16
  • 打赏
  • 举报
回复
3楼的sql语句看不是太懂,不过还是谢谢,我先看中不中 中就给分
cosio 2009-10-16
  • 打赏
  • 举报
回复
select username,logtim,logcontent
from
(
select username,logtime,logcontent,dense_rank()over(partition by username order by logtime desc) rn
from log
)
where rn=1
order by username
ruixindongdong 2009-10-16
  • 打赏
  • 举报
回复
select * from log group by username order by logtime desc
halupipi 2009-10-16
  • 打赏
  • 举报
回复
自己先顶下

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧