php - Laravel [QUERY] 如何从表 1 中选择条件必须满足表 2 和表 3 的内容

标签 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 and date->service_date,我想选择company -> name and location

如何 JOIN 表以获得所需的结果?

最佳答案

这没有经过测试,但它会像下面这样:

$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);

关于php - Laravel [QUERY] 如何从表 1 中选择条件必须满足表 2 和表 3 的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46307674/

相关文章:

php - 如何更新 PHP/mysql 中的行?

php - 无法将上传的文件移动到 php 中的在线服务器

mysql - 使用 CASE WHEN 在过程外部执行 INSERT

sql - Microsoft Access DateTime Default Now 通过 SQL

php - 如何使用 FOSRestBundle 以 JSON 格式返回或显示数据

PHP HTML 形式多维数组 MySQL

mysql - 在 MySQL 中通过复杂表达式获取 N 行顺序的有效方法

ubuntu-14.04 - MySQL 转储在 mysql 存储库上工作,但在 ubuntu 存储库中损坏

sql 'like'对mongodb中数字的操作

sql - 获取具有多对多关系的复杂数据的最快方法?