ArticleとCategoryの2つのエンティティがあります。それには多対多のテーブルがあります:article_category。
MySQLでは問題なくこのクエリを実行できます。
SELECT COUNT(*) cnt, c.id, c.name FROM article_category ac, category c WHERE ac.category_id = c.id GROUP BY c.id ORDER BY cnt DESC
しかし、それをDoctrine2クエリに変換するのに問題があります。以下は、article_categoryテーブルを参照して、クラスが存在しないというエラーを返します。
[...]
createQuery("SELECT COUNT(*) cnt, c.id, c.name FROM article_category ac, category c WHERE ac.category_id = c.id GROUP BY c.id ORDER BY cnt DESC")
[...]
具体的に言うと、私の問題は、多対多のテーブルの「category_id」にアクセスする方法がわからないことです。
編集
これは、内部結合を使用した同じクエリです(簡単になる場合)。
SELECT COUNT(*) cnt, c.id, c.name FROM category c INNER JOIN article_category ac ON c.id = ac.category_id GROUP BY c.id ORDER BY cnt DESC