Doctrine JOIN语法

时间:2015-01-27 12:00:30

标签: doctrine-orm doctrine inner-join

我在为doctrine查询构建器转换一些旧SQL时遇到问题。我认为问题出在内连接中,但我无法完成构建器所期望的参数。

这是我到目前为止所做的:

$qb = $em->createQueryBuilder();
$qb->select('ob.size', 'ob.colour', 'ob.productId', 'p.title')
            ->from('m:Option', 'ob')
            ->innerJoin('m:Product', 'p', 'ON', 'ob.ProductId');

这是原始查询:

 query="select size,colour,product_id,title from
                products,options_new where
                picture = '' and
                products.id = options_new.product_id and
                product_id like 'UTRW%'
                group by product_id";

我通常会明确地写连接,所以我不确定我是否理解了from子句在这里是如何工作的。

目前新查询正在生成此错误:

  

预期的Doctrine \ ORM \ Query \ Lexer :: T_WITH,“开启”

干杯!

1 个答案:

答案 0 :(得分:0)

尝试以下查询(在此处放置您的实体,会更有帮助),有关获取相关实体的更多详细信息,请查看文档:{​​{3}}

$qb = $em->createQueryBuilder('m');
$qb->select('ob.size', 'ob.colour', 'ob.productId', 'p.title')
    ->innerJoin('m.product', 'ob');