带stringAgg的slick-pg join语句

时间:2019-12-06 17:17:30

标签: scala slick slick-pg

我一直在尝试使用com.github.tminglei.slickpg.agg.PgAggFuncSupport.GeneralAggFunctions._软件包中的slick-pg聚合函数产生以下输出

SELECT
    "A".*,
    string_agg ( "B"."name", ',' ) 
FROM
    "A"
    LEFT JOIN "B" ON "B"."a_id" = "A"."id" 
GROUP BY
    "A"."id";

到目前为止,我最大的尝试是:

Tables.A
  .joinLeft(Tables.B)
  .on(_.id === _.aId)
  .groupBy(_._1)
  .flatMap {
    case (a, group) => {
      group.map(
        g => (a, stringAgg(g._2.map(_.name), ","))
      )
    }
  }

但是Slick在解决语句的平面图部分时遇到了问题。 有人有见识吗?

0 个答案:

没有答案