Postgres 数组列与 JSONB 列
Postgres Array column vs JSONB column
Postgres 数组列是否比包含 JSON 数组的 JSONB 列更容易索引?
https://www.postgresql.org/docs/current/arrays.html
https://www.compose.com/articles/faster-operations-with-the-jsonb-data-type-in-postgresql/
从语法上讲,JSONB 数组可能更易于使用,因为您不必将查询值包装在虚拟数组构造函数中:
where jsonbcolumn ? 'abc';
对
where textarraycolumn @> ARRAY['abc']
另一方面,规划器可能会使用 PostgreSQL 数组做出更好的决策,因为它收集有关其内容的统计信息,但不会收集有关 JSONB 的统计信息。
另外,您应该阅读您正在使用的 PostgreSQL 版本的文档,希望它大于 9.4,实际上应该大于 9.1。
Postgres 数组列是否比包含 JSON 数组的 JSONB 列更容易索引?
https://www.postgresql.org/docs/current/arrays.html
https://www.compose.com/articles/faster-operations-with-the-jsonb-data-type-in-postgresql/
从语法上讲,JSONB 数组可能更易于使用,因为您不必将查询值包装在虚拟数组构造函数中:
where jsonbcolumn ? 'abc';
对
where textarraycolumn @> ARRAY['abc']
另一方面,规划器可能会使用 PostgreSQL 数组做出更好的决策,因为它收集有关其内容的统计信息,但不会收集有关 JSONB 的统计信息。
另外,您应该阅读您正在使用的 PostgreSQL 版本的文档,希望它大于 9.4,实际上应该大于 9.1。