A 表:
id name
1 张三
2 李四
B 表: id 为 A 表 主键
id name
1 王五
1 小李
1 王八
2 赵四
2 李五
需要的结果为:
1 张三 , 王五
2 李四 赵四
SQL 语句为:
select * from a t5 left join
(select id ,name from
(select row_number() over(partition by id order by name ) t1 , t2.id,t2.name from b t2)
where t1 = 1 ) t3 on t3.id = t5.id
单表查询,多条重复记录只取一条
select * from
(
select row_number() over(partition by 重复字段 order by 时间字段 倒序还是顺序) t1, t2.字段1, t2.字段2 from 表 t2
where 1=1
查询条件
)where t1 = 1