首页 文章

Doctrine DQL按名称字段排序

提问于
浏览
0

我正在使用dql来查询我的表 .

$dql   = "SELECT p FROM WIC\ListingBundle\Entity\Listing p order by p.name";

我有两个表, ListingProducts .

Listing 表中,我有 product_id 字段,该字段引用 Productsid 字段 .

我希望能够通过 Productname 字段来命令我的查询,但我也希望每次执行 p.name 时都会出错 . Listing 表中不存在 p.name ,这就是为什么它会抛出错误,我只是不知道如何正确地执行它 .

Listing 实体:

/**
 * @ORM\ManyToOne(targetEntity="WIC\ProductBundle\Entity\Product", inversedBy="listings", cascade={"remove","persist"})
 * @ORM\JoinColumn(name="product_id", referencedColumnName="id")
 * @Common\Versioned
 * @Assert\NotBlank()
 */
protected $product;

1 回答

  • 0

    LEFT JOIN

    试试这种方式:

    $dql   = "SELECT l FROM WIC\ListingBundle\Entity\Listing l LEFT JOIN l.product p order by p.name";
    

相关问题