すべてのメンバーのリストを返そうとしています。また、メンバーシップ番号を持っている場合はそれも含めます。
モデルは以下
のように設定されています: メンバー クラス:
class Member {
/**
* @Id @Column(type="integer")
* @GeneratedValue(strategy="AUTO")
*/
protected $id;
/** @Column(type="string", length=255) */
protected $email = '';
}
メンバーシップ クラス:
class Membership {
/** @Id @Column(type="integer")
* @GeneratedValue(strategy="AUTO")
*/
protected $id;
/** @OneToOne(targetEntity="Member") */
protected $member = 0;
/** @Column(type="integer") */
protected $membership_number = 0;
}
すべてのメンバーを返すクエリを作成し、そのメンバーに存在する場合はメンバーシップ番号も表示します。
これを行う方法がわかりません。
以下のクエリは、必要なものではなく、メンバーシップを持つすべてのメンバーを選択します。右結合が機能しないため、どうすればよいかわかりません。
$this->_em->createQuery("SELECT m, mb FROM Membership mb JOIN mb.member m");