在具有空间支持的postgres中替代ltree?

时间:2011-12-08 20:25:27

标签: postgresql tree hierarchical-data

我有一个库存表,可以以树形方式使用类别,例如:

Computers-个PC Computers-> Tablets->苹果 Electronics-> Computers->其他

为此,ltree模块看起来最合适。但是,它不能接受名称中的空格,例如“Personal Computers.Apple”。

这是针对最终用户的输入,因此强制他们使所有空间都不理想。

我很难使用普通LIKE'个人电脑*',但不知道是否存在替代品......

我将根据该字段的信息构建层次结构。我不想构建另一个表来描述层次结构,因为在我的系统中,类别字段几乎是平的,深度很小,我认为更加用户友好。

1 个答案:

答案 0 :(得分:1)

我倾向于使用整数或文本数组,命令它们代表数据的层次结构。我通常通过表触发器管理数组字段。

表模式中的parent_node INTEGER, node_tree INTEGER[]之类的内容就足够了。