查询以从存储在CouchDB中的JSON数据的键字段中提取货币(USD)

问题描述 投票:0回答:1

我需要从存储在ouchDB中的给定JSON文档中基于货币(例如,仅美元)获取帐户余额

尝试使用正则表达式(正则表达式),但适用于值而不是关键数据。

{“ _id”:“ ID_000000000”,“ _rev”:“ 45-0ffa69047a93df6fe71656f5a7aa8681”,“ recordID”:“ 32123”,“ currencyData”:{“ 1000104183USD”:100,“ 9000282526INR”:300,“ 2340282526GBP”:0},“ status”:“ ACTIVE”,“〜version”:“ 3213”}

需要一个过滤器或查询,该过滤器或查询将向我提供基于美元,印度卢比或英镑的货币的数据

couchdb
1个回答
0
投票

您可以通过创建视图来实现:

function (doc) {
  for (var cur in doc.currencyData) {
    if (doc.currencyData.hasOwnProperty(cur)) {
      emit([doc._id, cur], 1)
    }
  }
}

然后可以使用start_key和end_key过滤视图以选择所需的数据集和货币。

没有过滤器:GET /yourDB/_design/myView/_view/byCurrency

enter image description here

已过滤美元:GET /yourDB/_design/myView/_view/byCurrency?start_key=["ID_000000000","1000104183USD"%20]&end_key=["ID_000000000",%20"1000104183USD"]enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.