2017-08-24 30 views
-1

我有一個DQL查詢這是工作的罰款:DQL到SQL轉換

$query = $queryBuilder 
         ->innerJoin('i.instsummary', 's')  
         ->innerJoin('i.address', 'a') 
         ->innerJoin('i.insturl', 'u') 
         ->select('s.instaffiliation,i.institutename,i.institutefeerange,i.instituterating,a.addressline1,a.addressline2,i.instituterating,' 
           . 'i.instituteteachingtimings,s.instdescription,s.insttype,s.insteligibilitycriteria,u.instlogo,u.instbrochure') 
         ->where('s.instaffiliation = :instaffiliation') 
         ->orderBy('i.instituterating') 
         ->setParameter('instaffiliation', $data) 
         ->getQuery()->getResult(); 

我需要這個查詢轉換成SQL。由於我對此感到陌生,任何人都可以幫助我嗎?

+0

您可能想要查看一個很好的SQL教程。如果你知道即使是基本的SQL,如何將上面的代碼轉換爲原始查詢也是相當明顯的。實際上,在我看來,在另一個方向上,即查詢代碼更困難。 –

回答

1

要從查詢生成器對象獲得SQL你只需要調用像

echo $queryBuilder->innerJoin(..)...->getQuery()->getSQL(); 

getSQL()方法對於DQL

echo $queryBuilder->innerJoin(..)...->getQuery()->getDQL();