【问题标题】:DQL select associationDQL 选择关联
【发布时间】:2014-05-23 11:15:30
【问题描述】:

我有 2 个学说实体,

实体A 有一个字段name

实体B有一个字段city

实体A 与实体B 具有一对多关联,名为bees

现在我尝试选择名称为“test”或与 B 实体关联的所有 A 实体,该实体的城市为“test”

我拥有的 DQL:

SELECT a FROM A a INNER JOIN a.bees b WHERE a.name LIKE ?1 OR b.city LIKE ?1

A 具有关联的B 但如果没有关联的B 时,即使A 的名称匹配,结果也是空的。

我该如何解决这个问题?

【问题讨论】:

    标签: php database doctrine-orm zend-framework2 dql


    【解决方案1】:

    你应该使用左连接

    SELECT a FROM A a LEFT JOIN a.bees b WHERE a.name LIKE ?1 OR b.city LIKE ?1
    

    这是一个备忘单:http://www.codeproject.com/KB/database/Visual_SQL_Joins/Visual_SQL_JOINS_orig.jpg

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多