id name referred_by_id
1 test1 2
2 test2 1
3 test3 1
我想添加一個新的列查詢出put referencedByName基於referencedByID。這等於id。Symfony加入相同的表格,以獲得值作爲別名從表
SELECT t1.*, t2.name AS refname
FROM tbl_students t1
JOIN tbl_students t2
ON t1.referred_by_id = t2.id
ORDER BY t1.id
我想這樣做JOIN(同桌)在Symsofny我查詢
$repo = $this->getDoctrine()->getRepository('C2EducateToolsBundle:Students');
$leadsData['leads'] = $repo->createQueryBuilder('t')
->select('t.id', 't.name','t.referredByID','t.referredBy')
->where('t.id = :stuID')
->setParameter('stuID', $leadId)
->getQuery()->getResult();
我一定要改變實體的任何associaltion?
我改變了我的實體
/**
* @var integer $referredByID
*
* @ORM\Column(name="referred_by_id", type="integer", nullable=true)
* @Type("integer")
*/
protected $referredByID;
要
/**
* @var referredByID
*
* @ORM\ManyToOne(targetEntity="Students", cascade={"persist", "remove", "merge"})
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="referred_by_id", referencedColumnName="id")
* })
* @Type("C2Educate\ToolsBundle\Entity\Students")
*/
protected $referredByID;
是的,你有你的學生實體自我參照實體定義referredBy財產(多對一和一對多)。所以,當你得到Student對象也會有學生類型 –
的referredBy對象我這樣做,我在我的問題更新相同。我如何在我的教條查詢中獲得該字段? – Developer