我希望根据日期选择表格的最新记录,但每个网址只有一个不同的列表。表结构是这样的;
ID URL DateVisited
1 google.com 01-01-2016
2 yahoo.com 01-02-2016
3 google.com 12-30-2015
4 google.com 02-01-2016
因此,对于我的结果集,我希望
google.com 02-01-2016
yahoo.com 01-02-2016
我在实际查询中会有更多的条件,但只想在点击日志中获取单个最新记录,而不是列出不同的网址和日期,只是不同的网址和最新日期。
答案 0 :(得分:7)
使用简单聚合实际上很容易做到这一点,如下所示:
select URL, max(DateVisited)
from <table>
group by URL
答案 1 :(得分:-1)
通常使用row_number()
:
select t.*
from (select t.*,
row_number() over (partition by url order by datevisited desc) as seqnum
from t
) t
where seqnum = 1;
这允许您获取与最新记录关联的所有列。