Postgresql Postgres数组列与JSONB列

Postgresql Postgres数组列与JSONB列,postgresql,postgresql-9.4,Postgresql,Postgresql 9.4,Postgres数组列是否比包含JSON数组的JSONB列更容易索引 从语法上讲,JSONB数组可能更易于使用,因为您不必将查询值包装在虚拟数组构造函数中: where jsonbcolumn ? 'abc'; vs 另一方面,规划者可能会对PostgreSQL数组做出更好的决策,因为它收集关于其内容的统计信息,但不收集关于JSONB的统计信息 另外,您应该阅读您正在使用的PostgreSQL版本的文档,希望它大于9.4,实际上应该大于9.1。您所说的“轻松”是什么意思?我想从DB的努力和d

Postgres数组列是否比包含JSON数组的JSONB列更容易索引


从语法上讲,JSONB数组可能更易于使用,因为您不必将查询值包装在虚拟数组构造函数中:

where jsonbcolumn ? 'abc';
vs

另一方面,规划者可能会对PostgreSQL数组做出更好的决策,因为它收集关于其内容的统计信息,但不收集关于JSONB的统计信息


另外,您应该阅读您正在使用的PostgreSQL版本的文档,希望它大于9.4,实际上应该大于9.1。

您所说的“轻松”是什么意思?我想从DB的努力和developerRun的努力两方面来看,与您的问题相关,但是:Postgres 9.4是你应该尽快计划升级。第二个条件也可以写成
,其中'abc'=any(textaraycolumn)
@a_horse_,名称为True,但该公式不会使用索引。
where textarraycolumn @> ARRAY['abc']