Laravel [QUERY]如何从表1中选择条件必须符合表2和表3的内容

时间:2017-09-19 18:42:10

标签: php mysql sql laravel eloquent

如果在表2和表3中满足条件,我需要从表1中选择项目,我无法构建查询。

我有这三个表:

company -> company_id, name, location

services -> company_id, service_id, service_name

date -> service_id, service_date //should i include company_id here?

我想选择公司 - >名称和位置如果搜索符合 services-> service_name和date-> service_date。

如何加入表格以获得所需的结果?

1 个答案:

答案 0 :(得分:1)

这未经过测试,但它将如下所示:

$query = Company::query()
  ->select(['company.name','company.location'])
  ->leftJoin('services', 'services.company_id', '=', 'company.company_id')
  ->leftJoin('date', 'date.service_id', '=', 'services.service_id')
  ->where('services.service_name', $servicename)
  ->where('date.service_date', $servicedate);