PostgreSQL json 索引实践 - 检索(存在、包含、等值、范围等)加速

  1. 云栖社区>
  2. 阿里云数据库ApsaraDB>
  3. 博客>
  4. 正文

PostgreSQL json 索引实践 - 检索(存在、包含、等值、范围等)加速

德哥 2018-10-05 17:45:15 浏览5847
展开阅读全文

标签

PostgreSQL , json , gin , rum


背景

用户在使用JSON类型时,常见的一些JSON搜索包括:

1、存在,JSON中是否存在某个KEY,某些KEY,某些KEY的任意一个

存在某个KEY(TOP LEVEL)

'{"a":1, "b":2}'::jsonb ? 'b'  

存在所有KEY

'{"a":1, "b":2, "c":3}'::jsonb ?& array['b', 'c']  

存在任意KEY、元素

'["a", "b"]'::jsonb ?| array['a', 'b']  

2、等值,JSON中是否存在指定的key:value对(支持嵌套JSON)

'{"a":1, "b":2}'::jsonb @> '{"b":2}'::jsonb  

3、包含,JSON中某个路径下的VALUE(数组

网友评论

登录后评论
0/500
评论
德哥
+ 关注
所属云栖号: 阿里云数据库ApsaraDB