如:表a,连接表b,b中有多条符合查询的记录

1、建立需要的子查询

  $sub = DB::table('b')->select(['aid'])->selectRaw('max(id) as id')->grouBy('id');

 

2、建立连接查询

  $_list = DB::table('a')->leftJoin(DB::raw('({$sub->toSql()}) as b),'a.id','=','b.aid)->get()

这样就可以使得左连接查询中右表记录只查询一条,避免左表记录重复出现。这里在只是筛选右表中第一条,其它条件暂时还没有实现。

开发中遇到的问题,先记录一下,防止以后再次出现。

相关文章:

  • 2021-08-24
  • 2021-06-11
  • 2021-09-23
  • 2021-08-14
  • 2021-12-03
  • 2021-12-05
  • 2021-06-21
  • 2022-12-23
猜你喜欢
  • 2021-08-06
  • 2021-11-29
  • 2021-12-15
  • 2021-12-26
  • 2022-02-08
  • 2021-11-23
  • 2021-05-07
相关资源
相似解决方案