该表有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
有效,但我应该输入很多列名。有没有更简单的方法?
答案 0 :(得分:2)
最简单的方法
select distinct * from table
或
select distinct col_1, col_2, col_3 from table
答案 1 :(得分:1)
添加@Przemo答案,最好使用select distinct * from table
,
您可以类似地使用select unique * from table
如果希望数据库仅返回所选的每组重复行的一个副本,请指定DISTINCT或UNIQUE。
但不是在分组中,
分组不能与*
must specific column names一起使用:
GROUP BY { column-Name [,column-Name] *
column-Name必须是查询当前范围的列