Sử dụng tổng hợp:
select foreignKey, min(primaryKey)
from t
group by foreignKey;
Nếu bạn muốn một giá trị ngẫu nhiên, bạn có thể sử dụng keep
cú pháp:
select foreignKey,
min(primaryKey) keep (dense_rank first order by dbms_random.random)
from t
group by foreignKey;
Và nếu bạn có nhiều cột, bạn có thể sử dụng row_number()
hoặc một truy vấn con tương quan:
select t.*
from t
where t.primarykey = (select min(t2.primarykey) from t t2 where t2.foreignkey = t.foreignkey);