2016-05-23 57 views
3

我想選擇任何與ltree以下單個級別的孩子。例如,如果我有Car.Ford,查詢將抓住任何具有路徑的孩子,例如Car.Ford.Fiesta,Car.Ford.Fusion,Car.Ford.Mustang。使用Elixir選擇帶Postgres的ltree的直接孩子

我該如何使用ltree建立此查詢,如果可能的話,專門使用Elixir?

現在,我使用

from c in query, where: fragment("path <@ ?", c.path) 

但它返回與它的路徑中的所有條目。

+0

那麼,你顯然會結束了使用'fragment'但除此之外,我認爲你需要潛入' ltree'文檔,並找出如何做你想做的 - > http://www.postgresql.org/docs/current/static/ltree.html – JustMichael

回答

1

想通了。

有關Postgres的文檔聲明,查詢中的{}限制了它將匹配的標籤數量,開發人員的文檔說明這實際上是限制要搜索的級別數。

'My.Example.*{1}' 

這將匹配任何低於路徑一級開始My.Example