私はこのようなエンティティを持っています:
/**
*
* @Table(name="table")
* @Entity
*/
class Table {
/**
* @Column(type="integer")
* @Id
* @GeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @ManyToOne(targetEntity="Entities\Users")
* @joinColumn(name="userId", referencedColumnName="id")
*/
private $User;
/**
* @Column(type="string")
*/
private $text;
}
私が行った場合
$q->getQuery()->getSingleResult()->getUser()->getUserId()
教義は次のようなクエリを生成します:
SELECT * FROM table t INNER JOIN users u ON u.id = t.userId WHERE id = 100
しかし、テーブルユーザーが必要ない場合は、userId を取得する方法を教えてください。
純粋なSQLでは、私はただ
SELECT * FROM table WHERE id = 100
ユーザーテーブルに参加せずにuserIdを取得します。