我有實體Product
和實體Subcategory
:如何根據Doctrine2中另一個Entitiy中的字段值獲取實體?
Subcategory.php
namespace Project\Entities;
/**
* Subcategory
* @Entity
* @Table(name="subcategories")
*
*/
class Subcategory {
/**
*
* @Id
* @GeneratedValue
* @Column(type="integer")
* @var integer $id
*/
public $id;
/**
* @Column(type="string")
* @var string $name
*/
public $name;
}
Product.php
namespace Project\Entities;
/**
*
* Product
* @Entity
* @Table(name="products")
*/
class Product {
/**
*
* @Id
* @GeneratedValue
* @Column(type="integer",length=16)
* @var integer $id
*/
public $id;
/**
*
* @Column(type="integer",length=3)
* @var integer $id_subcat
*/
public $id_subcat;
/**
*
* @Column(type="string")
* @var integer $name
*/
public $name;
/**
*
* @Column(type="string")
* @var integer $available
*/
public $available;
}
我想獲得的所有Subcategories
有Products
available
場等於1. Ergo。獲取僅包含可用產品的子類別。
我知道如何寫SQL
查詢,但我不知道如何實現這個在DQL
。
我應該提供一些額外的註釋嗎?
不錯的細節在此響應,尤其是最後一節。 – cantera
感謝有關表之間關係的信息,但實際上我希望在此查詢中獲得「子類別」。我澄清了我的問題,確切地說明了我的意思。 – pixel
我不知道您的產品表中使用了哪個字段來檢查可用性...所以我只需要調用字段可用性。 '$ dql =「SELECT sc FROM Project \ Entities \ Subcategory sc JOIN sc.products p WHERE p.availability = 1 ORDER BY p.name ASC」' –