【问题标题】:PHP , JOIN & Laravel - How to Separate arrays when table is joinedPHP , JOIN & Laravel - 如何在表连接时分隔数组
【发布时间】:2018-12-31 06:03:40
【问题描述】:

如何分离这个连接表?因为当我获取数据时,所有字段都被组合在一起。如何将表格作为数组分开?在我的情况下,我的两个表上的所有字段都在这里合并是我的代码。

$getairId = DB::table('aircrafts')
  ->join('movies','movies.aircraft_id','=','aircrafts.aircraft_id')
  ->join('ads','ads.aircraft_id','=','aircrafts.aircraft_id')
  ->select('movies.*','ads.*')
  ->where('aircrafts.aircraft_id','=', $airid)
  ->get();

【问题讨论】:

  • 您可以使用With方法在单独的数组中获取其他表的数据。有关更多详细信息,您可以查看此链接。 stackoverflow.com/questions/19852927/…
  • 我认为在这种情况下我不需要雄辩我只需要数组我在查询中有一个输出但我仍然不知道如何按表分隔它们因为我的问题是当我加入查询它们时他们正在组合而不是分开他们只在一个表中
  • 据我所知,查询生成器无法做到这一点。如果你不使用 eloquent,你应该遍历结果并以所需的方式对其进行格式化。也许这可以帮助stackoverflow.com/questions/41673556/…

标签: php mysql sql laravel join


【解决方案1】:

use aloquent with method

例如:

$users = User::with('podcasts')->get();

或者,如果您不想使用 aloquent,您可以像这样将它们分开:

$getairId = DB::table('aircrafts')
 ->join('movies','movies.aircraft_id','=','aircrafts.aircraft_id')
 ->join('ads','ads.aircraft_id','=','aircrafts.aircraft_id')
 ->select('movies.*','ads.*', 'movies.id as movies_id', 'ads.id as ads_id')
 ->where('aircrafts.aircraft_id','=', $airid)
 ->get();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-27
    • 1970-01-01
    • 1970-01-01
    • 2017-08-18
    • 2018-09-15
    • 1970-01-01
    相关资源
    最近更新 更多