English 中文(简体)
如何将它转换为原则 2 QueryBuilder 格式?
原标题:How to convert this to Doctrine 2 QueryBuilder format?
I would like to write nested query with Doctrine; Sample SQL is like below: SELECT * FROM layer WHERE layer.id NOT IN (SELECT task_id FROM users_tasks WHERE user_id = 1) AND parent_id IS NOT NULL AND leaf IS TRUE I have problem converting the SECOND SELECT statement. Thanks in advance. I would like to make it with createQueryBuilder not createQuery.
最佳回答
try this : 1) create your subquery $subquery = $this->_em->createQueryBuilder() ->select( t.id ) ->from( yourBundle:Task , t ) ->innerjoin( t.user , u ) ->where( u.id = 1 ) ->getDQL(); 2) after create your query $query = $this->_em->createQueryBuilder(); $query->select( l ) ->from( yourBundle:Layer , l ) ->where($query->expr()->notIn( l.id , $subquery)) ....; I tested it and it works :)
问题回答

暂无回答




相关问题
Zend and static class properties

I m trying to assign a value to a static class property when defining it: namespace Base; abstract class Skeleton { protected static $entityManager = end_Registry::get("EntityManager"); ......

require_once missing doctrine zend framework

I m integrating doctrine with Zend Framework. I ve hit an error thrown from cli. It seems Zend_Application_Bootstrap_Bootstrap does not have a require_once for ...

doctrine: QueryBuilder vs createQuery?

In Doctrine you can create DQL in 2 ways: EntityManager::createQuery: $query = $em->createQuery( SELECT u FROM MyProjectModelUser u WHERE u.id = ?1 ); QueryBuilder: $qb->add( select , u ) ...

热门标签