使用sql提取唯一值

时间:2013-07-31 10:59:35

标签: sql oracle11g

我正在查看的数据如下

ID  Name    Date
1   ABC 7/31/2013
1   AB  7/31/2012
1   ABCD    8/1/2011
1   AB  8/1/2010
1   ABD 8/1/2009
2   DEF 7/31/2013
2   DE  7/31/2012
2   DEF 8/1/2011
2   D   8/1/2010
2   DE  8/1/2009

我正在尝试编写一个sql,只有在发生更改时才会在“名称”列中提取唯一项目。例如,我得到的输出应该是

下面的输出
ID  Name    Date
1   ABC 7/31/2013
1   ABCD    8/1/2011
1   AB  8/1/2010
2   DEF 7/31/2013
2   D   8/1/2011
2   DE  8/1/2009

1 个答案:

答案 0 :(得分:0)

select ID, Name, Date from table t
where not exists 
(select 1 from table where ID = t.ID and name = t.name and t.Date > Date)

似乎你不见了

1   ABD 8/1/2009

来自您的预期结果