【问题标题】:How can I join a base without relationship ?如何在没有关系的情况下加入基地?
【发布时间】:2018-06-14 10:37:00
【问题描述】:

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

Company 表有字段 user_id,但 User 表与 company 没有关系。

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

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

但由于它没有,我不知道如何在 Doctrine 中做到这一点。 我已经以相反的方式完成了这个请求,我可以在我的公司存储库中加入表用户。

【问题讨论】:

    标签: sql doctrine-orm dql


    【解决方案1】:

    您的查询必须与此类似:

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

    关系是 1 到 n(“1”公司可以有“n” - 多个用户,因此将用户 (userId) 的主键添加到公司表中),所以关系确实存在。

    【讨论】:

    • 这是正确的,但为了有用,您应该解释它为什么起作用
    • 我在做...你没有让我完成
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-11
    • 2014-04-19
    • 1970-01-01
    • 2020-06-03
    • 1970-01-01
    • 2016-02-04
    相关资源
    最近更新 更多