0

我是 Laravel 的新手,有一个关于合并 2 JOIN 结果的问题。

起初,我有以下表格:

视频:身份证,批准

视频语言:视频 ID、语言 ID、名称

现在我执行以下操作:

$arr = Video::join("videos_languages","video_id","=","videos.id")->whereRaw("approved = 0")->get();

然后我将数组传递给我的视图。

我得到了这些值,但如果一个视频有超过 1 种语言,那么现在有双重结果。是否有可能将该连接的结果与 Laravel 合并为一个结果?

例子:

$arr[0]['id'] = 5;
$arr[0]['approved'] = 0;
$arr[0]['videos_langauges][0] =
{
  'name' = ...
}

$arr[0]['videos_langauges][1] =
{
  'name' = ...
}

谢谢 :)

4

1 回答 1

0
$arr = Video::distinct()->join("videos_languages","video_id","=","videos.id")->where("approved", 0)->get();

那应该从您的结果中清除重复项。另请注意where(),而不是whereRaw().

于 2014-11-25T05:39:20.443 回答