【问题标题】:JSON key prefix and value search in couchbase沙发库中的 JSON 键前缀和值搜索
【发布时间】:2021-07-19 22:00:55
【问题描述】:

在沙发上我会有类似的数据

"meta_info": {
  "tag1": 584254,
  "tag2": 0,
  "tag3": 1,
  "tag4": 2,
  "tag5": 4,
  "tag6": 4,
  "tag7": 6,
  "tag8": 6,
  "tag9": 1
}

我想匹配任何以tag 开头的键和值X

有没有办法在 N1QL 查询中做到这一点?

【问题讨论】:

    标签: couchbase n1ql


    【解决方案1】:

    我发现 N1QL 查询满足了我的要求:

    SELECT meta_info FROM `test-bucket` 
    where type="result" and any k in OBJECT_PAIRS(meta_info) satisfies k.name like "tag%" and k.val=0 END;
    

    使用弹性索引可以获得更好的性能:

    SELECT meta_info FROM `test-bucket` USE INDEX (USING FTS, USING GSI) 
    where type="result" and any k in OBJECT_PAIRS(meta_info) satisfies k.name like "tag%" and k.val=0 END;
    

    请参阅有关创建弹性索引的文档:https://docs.couchbase.com/server/current/n1ql/n1ql-language-reference/flex-indexes.html

    【讨论】:

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