Select 来自数据的唯一行(没有多个键值和年份)使用 SQL

Select Unique rows from the data (not having mutiple Key values and Year) using SQL

传入的数据如下所示:

ID  Key Year  
1   2288    2013  
1   2288    2014  
1   2831    2012  
1   3723    2012  
1   5005    2012  

o/p应该是

ID  Key     Year  
1   2288    2013  
1   2288    2014  

如果同一 ID 和 Year 有多个 "Key" 值”,则应删除这些行。

使用Window Function在每个year被复制时得到min键值。

Select ID, Key, Year from 
(
select *,row_number() over(partition by Id,Year order by key) Rn
)a
where rn=1

按 ID 和年份分组。

SELECT ID, MIN(KEY), YEAR
FROM TABLE
GROUP BY ID, YEAR
HAVING COUNT(KEY)=1

尝试

Select 
  ID, Key, Year 
from 
  table
group by
  ID, Year
having
  count(*) = 1