【问题标题】:Doctrine native query self join without join column?没有连接列的学说本机查询自连接?
【发布时间】:2015-11-24 14:01:35
【问题描述】:

我想在AA 之间进行自我连接。

只要我不尝试从加入的自我中选择字段,它就可以工作。

所以:

SELECT a.id
FROM A AS a
LEFT JOIN A AS a2;

会起作用(或至少不会抛出异常/错误)。

同时:

SELECT a.id, a2.id AS a2_id
FROM A AS a
LEFT JOIN A AS a2;

不会起作用,因为 Doctrine 需要适当的 ResultSetMapping。哪个需要执行连接的连接列。

但是没有提供。它的每条记录都与每条记录连接。没有附加条件;)

那么有可能吗?教义有什么特殊的语法吗?

【问题讨论】:

    标签: doctrine-orm doctrine-native-query


    【解决方案1】:

    点击“发布您的问题”按钮后的几秒钟内就会亮起。

    就这样(将与问题中的第二个 SELECT 一起使用):

    $rsm->addEntityResult('A', 'a');
        $rsm->addFieldResult('a', 'id', 'id');
    
    $rsm->addEntityResult('A', 'a2');
        $rsm->addFieldResult('a2', 'a2_id', 'id');
    

    是的。只需使用适当的别名重复 addEntityResult

    【讨论】:

      猜你喜欢
      • 2014-12-21
      • 1970-01-01
      • 2012-10-21
      • 2017-01-03
      • 2011-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多