【发布时间】:2014-04-11 22:31:05
【问题描述】:
在阅读 Doctrine 2 Documentation at this page 时,我可以看到他们有两种方法来指定内部连接的条件:
// Example - $qb->expr()->innerJoin('u.Group', 'g', Expr\Join::WITH, 'g.manager_level = 100');
// Example - $qb->expr()->innerJoin('u.Group', 'g', 'WITH', $qb->expr()->eq('g.manager_level', '100'));
public function innerJoin($join, $alias, $conditionType = null, $condition = null); // Returns Expr\Join instance
和
// Example - $qb->innerJoin('u.Group', 'g', Expr\Join::ON, $qb->expr()->and($qb->expr()->eq('u.group_id', 'g.id'), 'g.name = ?1'))
// Example - $qb->innerJoin('u.Group', 'g', 'ON', 'u.group_id = g.id AND g.name = ?1')
public function innerJoin($join, $alias = null, $conditionType = null, $condition = null);
我不明白其中的区别,因为 innerjoin 仅在找到匹配项时才返回内容,并且我找不到任何关于此的文档。
谢谢
【问题讨论】:
标签: php mysql sql symfony doctrine-orm