MySQL, Oracle, Linux, 软件架构及大数据技术知识分享平台

网站首页 > 数据库 / 正文

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

2024-11-26 17:57 huorong 数据库 6 ℃ 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:oracle 记录

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言