专业编程教程与实战项目分享平台

网站首页 > 技术文章 正文

关于Oracle中重复数据只取一条记录

ins518 2024-10-19 07:14:08 技术文章 18 ℃ 0 评论

A表中数据无重复,B表中有重复记录。如果按照正常的关联关系A表中X列关联B表中T列。得到的结果B包含A的值。如果要得到关联结果A的结果至与B的值一对一的话就需要用到Oracle中表的隐藏序列rowid。具体做法如下先将B去重:

select T,C from B where rowid in( select min(rowid) from B group by T having count(*)>=1;

这样就可以将B的重复记录剔除掉,然后关联A表得到想要的结果

Select * from A a,( select T,C from B where rowid in( select min(rowid) from B group by T having count(*)>=1) b where a.X=b.T;

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表