0

我有 testa couchbase 4 服务器,用于存储传感器测量数据。

我有以下观点:

function (doc, meta) {
  if (doc.aks) {
    emit([doc.aks, doc.timestamp], {
      value: doc.value,
      status: doc.status
    });
  }
}

这是一个示例文档:

{
   "timestamp": 1199180981,
   "value": 0,
   "status": 2147483650,
   "aks": "BN028:H23:VS:001:Zustand"
}

我现在尝试对这个视图进行以下查询:给我一个单个传感器的值的时间范围。

/_view/timeline?stale=false&startkey=["BN020:H03:ZW:102:MC_t_return",12675419334]&endkey=["BN020:H03:ZW:102:MC_t_return",13675419334]

但这不会产生任何结果。

如果我只使用 startkey= 或 endkey= 我会得到结果,但如果我同时使用两者则不会。我错了什么?

4

1 回答 1

0

确保您的存储桶中确实有数据在您的范围内。我使用了您的视图和查询并收到了结果。您的示例文档不在范围内,aks 错误并且时间戳太早。如果您添加的文档在该范围内,您应该会收到它。这是您范围的下限:

{
    "timestamp": 12675419334,
    "value": 0,
    "status": 2147483650,
    "aks": "BN020:H03:ZW:102:MC_t_return"
}
于 2015-07-31T15:40:32.673 回答