查询以限制列中的重复值 - SQL

时间:2016-02-17 01:04:54

标签: sql

嗨,想知道是否有人可以帮助我,这可能不是最好的描述,但我会尽我所能。我有一个表有一个具有许多重复值的列。

COL1|COL2|COL3
1    data data
1    data data
1    data data
2    data data
2    data data

我想要一个只返回col1重复值中的一个的查询。所以查询就是这样做的。

COL1
1
2

这是否可能,我怎么能这样做?

2 个答案:

答案 0 :(得分:3)

DISTINCT声明

之后使用SELECT个关键字

SELECT DISTINCT * FROM ...

答案 1 :(得分:0)

如果您只想要第一列,那么:

select distinct col1
from t;

如果您有多列,这可能无法达到预期效果。

如果您想要完整的行,但每个值只需要一个,那么请使用row_number()

select t.*
from (select t.*, row_number() over (partition by col1 order by col1) as seqnum
      from t
     ) t
where seqnum = 1;