多表关联问题

蛮大人LT 2017-04-14 09:07:15
有两张表有关联关系,用一个ID关联的

A 表有 100条数据
B 表有 20条数据

我想查出来20条数据,并且带上A表中这20条数据ID一样的其他字段,

但是我查出来总是很多数据,原因是因为A表中有很多和B表ID相等的数据。

有没有办法处理

left join 等关联关系解决不了
...全文
757 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ACE-2017 2017-06-23
  • 打赏
  • 举报
回复
先对A表和B表进行连接

 select (select t2.BLICTYPE
           from (select tt.*,
                        row_number() over(partition by tt.MARPRID ORDER BY tt.OPFROM DESC, ID DESC) as rn
                   from 表1 tt) t2
          where t2.rn = 1
            and t.id = t2.MARPRID) LICENSE_TYPE
   from  表2 t
雨巷啊 2017-05-02
  • 打赏
  • 举报
回复
先对A表和B表进行连接,然后用row_number() over()分析函数排序。再从结果中去row_number=1的行。
ACE-2017 2017-05-02
  • 打赏
  • 举报
回复
将A表作为主表来关联B表,查询A表的数据,然后和B表中的ID相比较,存在一条显示一条。
reshine8306 2017-04-20
  • 打赏
  • 举报
回复
两张表关联查询,然后去掉B表中某个字段为空项
五更琉璃 2017-04-18
  • 打赏
  • 举报
回复
partition by 然后 ROW_NUMBER() =1
imcmuc 2017-04-18
  • 打赏
  • 举报
回复
这个需要将A表作为主表来关联B表,查询A表的数据,和B表中的ID相比较,存在一条显示一条。
卖水果的net 2017-04-14
  • 打赏
  • 举报
回复
给出测试数据,和你的预期结果。

3,491

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧