【问题标题】:Postgres jsonb null vs empty object query performancePostgres jsonb null vs 空对象查询性能
【发布时间】:2016-03-29 13:48:30
【问题描述】:

假设有以jsonb 格式存储的键值数据字段,对于某些(少数)记录可能不存在,那么对于这种情况,什么是可取的,性能明智的 - 空字段或空 json 对象?

要通过一些键值条件来查询数据并不比:

SELECT * FROM table WHERE id = :id AND jsondata @> '{"key1":"value1"}

将来可能会被索引,所以关注的是查询 - 是否会比空对象更快地跳过空字段?

【问题讨论】:

    标签: postgresql jsonb


    【解决方案1】:

    NULL 以位集的形式存储在行标题中,因此可以略快地跳过它们,但如果您只有“少数”记录具有 NULL 值,则差异不太可能很明显。

    您还可以创建部分索引来排除 NULL。

    【讨论】:

      猜你喜欢
      • 2023-04-03
      • 1970-01-01
      • 2018-03-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多