【问题标题】:How to use array_agg in doctrine ORM Symfony 4.1?如何在学说 ORM Symfony 4.1 中使用 array_agg?
【发布时间】:2018-09-20 18:45:16
【问题描述】:

在我的 Symfony 4.1 项目中,我使用 postgresql 9.6 作为数据库。我正在对数据库事务使用学说 ORM 查询。 对于其中一项事务,我使用 array_agg() 来获取 2 行或更多行作为单个记录。 (组 concat 确实解决了我的目的) 但它给出了一个错误,因为 array_agg() 函数而不是方法。

谁能告诉教义中如何使用postgresql的特定功能?

【问题讨论】:

  • 听起来你在滥用 ORM。该查询的确切目的是什么?是在报道吗?运行纯 SQL 并将结果包装到一个不错的结果类中? ORM 应该如何映射它不知道的附加列?
  • 你可以在这里发布你的Entity 吗?如果您使用 getQuery()getResult() 等方法,Doctrine ORM 默认会聚合数据。

标签: php symfony orm doctrine


【解决方案1】:

ORM 不支持该函数,因为 ORM 很少构建聚合数组。你在这里做报道。 SQL 就是为此而生的。不需要ORM。

【讨论】:

    【解决方案2】:

    你可以使用这个包,它允许在 Symfony 中使用大部分 postgresql 函数来进行教义

    https://github.com/martin-georgiev/postgresql-for-doctrine/blob/master/docs/INTEGRATING-WITH-SYMFONY.md

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-02-28
      • 2017-06-16
      • 2012-06-11
      • 2010-11-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多