小编Ben*_*Ben的帖子

在 Postgres 中搜索 JSON 数据哪个更有效:GIN 或多个索引列?

例如,假设我有一个中等行数(约 100,000 行)的表,其中一jsonb列包含以下示例数据:

{"name":"Bob", "favoriteColor":"red", "someOtherObject": {"somethingElse": true}}
Run Code Online (Sandbox Code Playgroud)

是否更有效:

  1. 在 jsonb 列上使用 GIN 索引,然后使用 Postgres 的内置 JSON 查询函数来提取数据

  2. 创建多列来表示可以搜索的内容,即一列用于name,一列用于favoriteColor等;在这些列上构建 b 树索引,然后运行select document from table where name = 'Bob'

  3. 一些其他的解决方案?

    请记住,解决方案需要有效地支持like查询,以便能够搜索以给定输入字符串开头的值。

postgresql index json postgresql-9.6

7
推荐指数
1
解决办法
5976
查看次数

标签 统计

index ×1

json ×1

postgresql ×1

postgresql-9.6 ×1