如何在service层进行查询数据组合关联?

已知如下sql语句:

select * from a left join b on a.id=b.id
where a.x=1 and b.y=2;

这是个很常见的在db层连表查询,但如果db层不允许连表查询操作下,只能通过分别查询单表的方式进行查询,查询结果到达service层进行组合。

已知a,b表的数据量都较大,有没有较好的解决方案。

梳理:
1.不能在db层进行连表查询。
2.两表都有查询条件
3.查询结果需要两表数据组合
4.两表数据量都较大

阅读 5.7k
1 个回答

1:根据查询字段,添加合适的索引
2:在有效使用索引的情况下,查出a表的数据,然后再根据a表查出的数据去b表中批量获取数据,如果a查出的数据量很多,可以分批批量去查。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题