我想知道是否有人可以幫助這個Doctrine查詢。
基本上,我的查詢不會返回外鍵未設置的行或NULL
。我想返回所有行。學說DQL查詢 - 當外鍵爲空時獲取行
這裏有兩個模式
項目
class Items{
/**
* @var integer $id
*
* @Column(name="id", type="integer", nullable=false)
* @Id
* @GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string $name
*
* @Column(name="name", type="string", length=255, nullable=false)
*/
private $name;
/**
* @var integer $type
*
* @ManyToOne(targetEntity="Types")
*
*/
private $type;
}
類型
class Types{
/**
* @var integer $id
*
* @Column(name="id", type="integer", nullable=false)
* @Id
* @GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string $name
*
* @Column(name="name", type="string", length=255, nullable=false)
*/
private $name;
}
而下面的DQL查詢
SELECT i.id, i.name, t.name as type FROM entity\Items i, entity\Types t WHERE i.type=t.id (OTHER CONDITIONS...)
上述查詢不會返回type
外鍵中沒有值的行。
是否有可能返回這些行?
預先感謝您...
的愈來愈'錯誤:用於聯接路徑的表達,但鑑定可變實體\\類型不before.' – ekhaled 2012-02-22 17:33:36
什麼定義' LEFT JOIN i.type t' – webbiedave 2012-02-22 17:39:02
工作正常...非常感謝... – ekhaled 2012-02-22 17:50:00