Doctrine orderBy with PostgreSQL json column(无法识别json类型的相等运算符)

时间:2017-10-27 19:11:43

标签: postgresql doctrine-orm

我有两个实体Export和ExportItem。 Export实体中的一列是config类型json(这是我的数据库中只有json类型的列)。

出口实体的一部分:

/**
 * @ORM\Column(type="json", nullable=true)
 */
protected $config;

/**
 * @var ArrayCollection|ExportItem[]
 * @ORM\OneToMany(targetEntity="Entity\ExportItem", mappedBy="export", cascade={"persist", "remove"}, fetch="EXTRA_LAZY")
 */
protected $items;

ExportItem实体的一部分:

/**
 * @var Export
 * @ORM\ManyToOne(targetEntity="Entity\Export", inversedBy="items")
 */
protected $export;

我想订购每个附加的ExportItem数量的导出,但是下一个查询抛出错误" 无法识别json类型的等式运算符"

$this->createQueryBuilder('o')
     ->join('o.suit', 's')
     ->where('s.id = :suitId')
     ->setParameter('suitId', $suit->getId())         
     ->select('COUNT(i) AS HIDDEN nbrItems', 'o.id')
     ->leftJoin('o.items', 'i')
     ->orderBy('nbrItems', $orderDir)
     ->groupBy('o');

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。只需要添加

->groupBy('o.id');
查询中的