我原來的查詢是:學說:沒有別名被調用getRootAlias()錯誤之前設置
Select * from user u
inner join company c
on u.company_id = c.id
where u.id=2
於是我用它作爲:
$em = $this->get('doctrine')->getEntityManager();
$qb = $em->createQueryBuilder();
$qb->select('u')
->from('TemplateManager\Bundle\DocumentGeneratorBundle\Entity\User u')
->innerjoin('u.company')
->where('u.id = ' . $id);
$query = $qb->getQuery();
$result = $query->getResult();
我得到500與登錄以下細節:
[2016-09-27 12:06:34] request.INFO:匹配的路線 「templatemanager_documentgenerator_api_client_find」(參數: 「_controller」: 「TemplateManager \捆綁\ DocumentGeneratorBundle \控制器\ API \ ClientController :: findAction」, 「ID」: 「2」, 「_route」: 「templatemanager_documentgenerator_api_client_find」)[] [] > [2016- 09-27 12:06:34] security.DEBUG:從 會話中讀取SecurityContext [] [] > [2016-09-27 12:06:34] security.DEBUG:從用戶 提供者重新加載用戶。 [] [] > [2016-09-27 12:06:34] security.DEBUG:用戶名「admin」已從用戶提供商重新加載 。 [] [] > [2016-09-27 12:06:34] request.CRITICAL:未捕獲的PHP異常 RuntimeException:「在調用getRootAlias()之前未設置別名。」 at //mproject//vendor/doctrine/orm/lib/Doctrine/ORM/QueryBuilder.php line 423 {「exception」:「[object](RuntimeException(code:0):在調用getRootAlias之前沒有設置別名 ()。at //myproject//vendor/doctrine/orm/lib/Doctrine/ORM/QueryBuilder.php:423)「} [] > [2016-09-27 12:06:34] security.DEBUG :在 會議撰寫的SecurityContext [] []
這是一個加入一個 – Volatil3
你是什麼意思,它是一個加入嗎? – miorey
我需要的查詢是SQL JOIN。檢查原始查詢 – Volatil3