如何在没有关系的情况下加入基地?

时间:2018-06-14 10:37:00

标签: sql doctrine-orm dql

我有一个用户表和一个表公司。

表Company有一个字段user_id,但表User与公司没有关系。

如果用户有一个字段company_id,我会做这个请求:

$queryBuilder
            ->select('u')
            ->join('u.company', 'c')
            ->where('c.name LIKE :name')
        ;

但事实并非如此,我不知道如何在Doctrine中做到这一点。 我反过来已经完成了这个请求,我可以在我公司的存储库中加入表User。

1 个答案:

答案 0 :(得分:1)

您的查询必须与此类似:

select *
from user u
  join company c
    on u.userId=c.userId

关系是1到n(" 1"公司可以拥有" n" - 很多用户,因此来自用户的主键(userId)被添加到公司表中),所以这种关系确实存在。