使用像 ltree,json 这样的 postgres 数据类型是否与 NoSQL 相关?

Does using postgres datatypes like ltree, json is related to NoSQL?

当我在 PostgreSQL 中设计 table 时,我计划使用 ltree 或路径数据类型来实现我的功能。但是团队成员被告知,如果我们使用 ltree,那么我们的整个 table 设计将变成 NoSQL 格式。

是真的吗?

如果是,那么如何以 SQL 格式实现此 ltree 设计? 如果否,能否请您指导我理解这一点?

如果您很想大量使用结构化数据类型,那么很可能您做错了什么。

应以某种方式由数据库处理的数据(用于表达式或WHERE 条件、索引、约束)通常应以简单数据类型保存在规范化表中。您应该有外键约束来表达关系。

也就是说,偶尔使用您提到的数据类型并没有错,特别是如果这些数据没有在数据库内部进行大量处理。

在这种情况下,一如既往,这是一个品味和经验的问题。只是不要陷入一直使用只有主键和 jsonb 字段的表的陷阱。