私はsymfony 2.0.10を使用してサイトを構築しており、コントローラーで次のコードを使用してデータベーステーブルをクエリしています:
$query = $this->getDoctrine()->getRepository('MyBundle:MyTable')->createQueryBuilder('x')->getQuery();
$data = $query->getResult();
連続した番号 (0 から N) ではなく、指定されたフィールドによって配列内でインデックス付けされた結果を取得します。CreateQuery メソッドでINDEX BYを指定すると、これを実行できることがわかりましたが、クエリ ビルダーを使用してこれを行うにはどうすればよいですか? この質問では回答が返されますが、ユーザーはリポジトリを使用していません。
編集1
$query = $this->getDoctrine()->getEntityManager()->createQueryBuilder()->select('x')->from('MyBundle:MyTable', 'x', 'x.myIndexField')->getQuery();