2012-08-09 60 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