Oracle 减少字段重复的结果集

Oracle reduce result set on field duplication

我在 Oracle (12c) 中有一个 select 的结果集如下:

GROUP_ID    NAME    ORDERING
       1      AA           0
       1      AA           1
       1      AB           2
       1      AC           3
       2      BA           1
       2      BA           2
       2      BB           3
       2      BC           4

我不知道如何减少结果集以删除基于一列的行,同时保留其他字段。预期结果如下所示:

GROUP_ID    NAME    ORDERING
       1      AA           1
       1      AB           2
       1      AC           3
       2      BA           2
       2      BB           3
       2      BC           4

我尝试使用 group by 来解决它,但它摆脱了必需的字段排序。我不是 window functions 方面的专家,但我认为使用它可能是一种有效的尝试。

从你的数据来看,你好像只需要:

select group_id, name, max(ordering)
from yourTable
group by group_id, name