我有3列。
column_a, column_b, column_c
我试图让所有的行只在column_a中使用。
当我写
select distinct column_a,column_b,column_c
我认为它给了我不同的配对。所以我有
value1 - a - b
value1 - a - c
我想通过column_b和column_c值保留column_a的不同值,因为我将从该sql查询创建一个表,并且我想将PK添加到column_a列。
答案 0 :(得分:0)
我认为最安全的方法是使用row_number()
:
select a, b, c
from (select t.*,
row_number() over (partition by a order by a) as seqnum
from t
) t
where seqnum = 1;
这将为每个a
值返回一个任意行,但a
不会在结果集中重复。