2014-11-24 35 views
0

有一个表test其中有3列:id1, id2 ,id3如何选择不在配对单元格中逐列的列?

在MySQL中,我可以使用

select id1, id2, id3 
from test 
group by id1, id2; 

,以获得不同的id1, id2,每个组中的第一id3

例如:在表试验中的数据作为跟随

id1 id2 id3 
1 1 1 
1 2 1 
1 2 2 
2 2 2 

结果将是:

1 1 1 
1 2 1 
2 2 2 

但在蜂房,有错误

表达不GROUP BY键'id3'

我可以在蜂巢中使用什么?我只想按id1,id2分组,并获得id3的第一行。

回答

0

试试这个,

select id1,id2,id3 
from 
(
select id1,id2,id3,ROW_NUMBER() over (Partition BY id1,id2) as rnum 
from test) t 
where rnum=1; 

输出

1 1 1 
1 2 1 
2 2 2 
相关问题