我有一个通过HABTM连接表具有多对多关联的模型。但是,我的连接表没有唯一地映射我的行,因此我需要添加一个group_by子句来获取我的唯一行。
使用http://localhost:8088/x/#/y
时,有没有办法按表达式添加组?
Repo.preload
生成的查询:
Repo.get!(P1, p1_id)
|> Repo.preload(:c0)
目标查询:
SELECT
c0.*, p1."id" FROM "c0" AS c0
LEFT JOIN "p1" AS p1
ON p1."id" = 2
LEFT JOIN "c2" AS c2
ON c2."p1" = p1."id"
WHERE (c2."c1_id" = c0."id")
答案 0 :(得分:1)
对此我不熟悉,我没有在当地进行测试,但我认为可以实现以下目标;
query = from p in P1,
join: c in assoc(p, :c0)
group_by: p.id
preload: [c0: c]
Repo.get(query, p1_id)