2012-08-09 59 views
1

在Symfony的2教義如何才能執行這個查詢:的Symfony2 - CreateBuilder - 查詢在其他查詢

SQL:

SELECT p.* FROM messages, (SELECT * from posts ORDER BY created_at DESC) as p GROUP BY p.category_id ORDER BY message.created_at; 

Probleme:每個表都必須是實體像MyProjectMyBundle:myEntity所,(SELECT * FROM帖子ORDER BY created_at DESC)不是一個實體...

的Symfony 2(不工作):

$query = $em->createQuery('SELECT p.* 
       FROM MyProjectMyBundle:Messages, 
       (SELECT * from posts ORDER BY created_at DESC) as p 
       GROUP BY p.category_id ORDER BY message.createdAt'); 

我們可以包含其他查詢如Mysql嗎?一個辦法?

感謝

回答

1

我相信教義不允許你做子查詢裏面的從聲明。但是,您可以將常規sql輸入到教義中。

這裏是對此的一篇文章:Using Raw SQL with Doctrine

+0

謝謝。使用本機SQL查詢保留實體的好方法:http://sf2.memosdedev.com/creer-une-requete-sql-native-dans-symfony2-avec-doctrine2.html – 2012-08-10 08:13:06