当我有7

时间:2016-02-15 05:40:13

标签: sql db2

我想使用db2 ...

这样的输出
NR  TAG1    TAG2    someData1   someData2
=========================================
1   Class1  2015    11665456     862187687
1   Class1  2014    33254665     86221187687
1   Class1  2013    55557321     8687687787
2   Class2  2015    21654765     86822117687
2   Class2  2014    57658776     8632187687
2   Class2  2013    54878575     8682127687

现在我尝试但未能编写SQL代码 在前3行中有一个区别。

当我尝试用(*)获取所有数据时,我得到865条记录。

当我只拍摄前3行而忽略其余部分时,我得到808条记录。

但我不知道如何显示其余的数据。

1 个答案:

答案 0 :(得分:0)

我认为您只想考虑前三个COLUMNS并显示结果,以删除重复项。如果我的理解是错误的,请进一步解释。

with cte as 
    (select *, row_number() over(partition by NR, TAG1, TAG2 order by NR, TAG1, TAG2) as row_num from Table_name)
    select * from cte where row_num=1