代码之家  ›  专栏  ›  技术社区  ›  GoingMyWay

Oracle,如何过滤重复的行数据?

  •  1
  • GoingMyWay  · 技术社区  · 9 年前

    该表有30多列,有许多重复的行数据,如下所示:

    col_1  col_2  col_3
    1      2      2
    2      3      2
    1      2      2
    3      2      2
    1      2      2
    2      3      2
    3      2      2
    

    我想选择所有数据并过滤这些重复的行,过滤后,结果是

    col_1  col_2  col_3
    1      2      2
    2      3      2
    3      2      2
    

    我找到了 DISTINCT 和 GROUP BY 工作,但我应该键入许多列名。有没有更简单的方法?

    2 回复  |  直到 9 年前
        1
  •  2
  •   Przemo    9 年前

    最简单的方法

    select distinct * from table
    

    或

    select distinct col_1, col_2, col_3 from table
    
        2
  •  1
  •   Ori Marko    9 年前

    添加到@Przemo-answer,您最好使用 select distinct * from table ,

    您可以类似地使用 select unique * from table

    但不是在Group by中,

    分组依据不能与一起使用 * 你 must specific column names :

    分组依据 列名[,列名]*

    列名必须是查询当前范围中的列