使用 Elixir 使用 Postgres ltree 选择直接 children
Selecting direct children with Postgres ltree using Elixir
我正在尝试 select 使用 ltree children 低于一个级别。
例如,如果我有 Car.Ford,查询将抓取任何具有 Car.Ford.Fiesta、Car.Ford.Fusion、Car.Ford.野马.
如何使用 ltree 构建此查询,如果可能的话,特别是使用 Elixir?
我现在正在使用
from c in query, where: fragment("path <@ ?", c.path)
但它 returns 所有包含路径的条目。
想通了。
Postgres 上的文档指出 lquery 中的 {} 限制了它将匹配的标签数量,开发人员的文档阐明这实际上是为了限制要搜索的级别数。
'My.Example.*{1}'
这将匹配以 My.Example
开头的路径下一级的任何内容
我正在尝试 select 使用 ltree children 低于一个级别。
例如,如果我有 Car.Ford,查询将抓取任何具有 Car.Ford.Fiesta、Car.Ford.Fusion、Car.Ford.野马.
如何使用 ltree 构建此查询,如果可能的话,特别是使用 Elixir?
我现在正在使用
from c in query, where: fragment("path <@ ?", c.path)
但它 returns 所有包含路径的条目。
想通了。
Postgres 上的文档指出 lquery 中的 {} 限制了它将匹配的标签数量,开发人员的文档阐明这实际上是为了限制要搜索的级别数。
'My.Example.*{1}'
这将匹配以 My.Example
开头的路径下一级的任何内容