PHP加入多个查询结果

时间:2019-11-13 07:40:28

标签: php mysql laravel jointable

我需要运行两个queries,一个合同列表和一个销售列表,由于每个客户都有重复的合同,因此我写了一个查询,该查询将返回加入我们的产品表以筛选某些产品时,customer_id及其最终合同的日期。另一个查询也通过连接到几个表返回给定区域的销售清单,无论如何,在调用这些查询后,我可以使用php加入它们。


    $contracts = DB::table('contracts as c').....
    $leads= DB::table('contracts as l')..

因此,在创建了两个都有customer_id列的集合之后,如果这些在我的数据库中的两个表都只是一个简单的left_join,我想使用PHP将它们加入,但是,我想不出一种方法它与采石场的输出....在此先感谢所有帮助。我一直在做一些研究,认为我需要以某种方式进行映射

   $leads = $leads->map(function ($item, $key) {
    $single_lead = $contract->where('l.customer_id',$item->spp.customer_id);
    return collect($item)->merge($single_lead);

类似的东西,但是这不起作用,我被卡住了,所以我应该仔细检查销售线索中的每个项目,然后将其与具有相同customer_id的合同信息合并在一起

1 个答案:

答案 0 :(得分:1)

您的问题不是很清楚,但是给了您提示您退出连接, 您可以按照以下方式进行操作:

$query = DB::table('contracts')->leftJoin('customer','customer.id','=','contracts.customer_id')->get()

您可以在Laravel Docs

中看到它