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 に答える