如何从Ecto

时间:2016-03-26 20:10:36

标签: elixir ecto

我尝试编写Ecto查询,它将同时从两个表中选择数据。就像Select t1.*,t2.* from table1 t1,table2 t2 where t1.id=1 and t2.id=2一样,我无法找到解决方案,只能找到编写原始SQL的方法,而且它看起来并不好。

与变量一样 - 使用preload,但它会产生额外的查询。

comments_query = from c in Comment, order_by: c.published_at
Repo.all from p in Post, preload: [comments: ^comments_query]

感谢您的任何想法

1 个答案:

答案 0 :(得分:0)

从Ecto.Query

中试试这个

https://hexdocs.pm/ecto/Ecto.Query.html#join/5

from t1 in Table1,
   join: t2 in Table2, on: t1.t2_id == t2.id,
   select: {t1.title, t2.text}