【问题标题】:How to get all documents in a specific range of time?如何获取特定时间范围内的所有文档?
【发布时间】:2020-01-23 13:47:05
【问题描述】:

就像标题中所说,我试图在特定时间范围内获取所有文档。我的数据库中有存储了时间戳的文档。 我一直在寻找类似 @​​987654321@ 的东西,但我并没有真正让它为我工作,我也使用 nano 用于 nodejs,我不知道如何编写类似的东西

?startkey="1970-01-01T00:00:00Z"&endkey="1971-01-01T00:00:00Z"

在纳米语法中。我在这里https://www.npmjs.com/package/nano#dbviewdesignname-viewname-params-callback 寻找东西,但我找不到类似的东西。

【问题讨论】:

    标签: node.js couchdb couchdb-nano


    【解决方案1】:

    您可以将/db/_find 与使用运算符$gte$lt(或$lte)的选择器一起使用,在CouchDB API 参考的Condition Operators 一章中描述。

    "selector": {
       "myTimestamp": {
          "$gte": "2020-01-23T06:00:00.000Z",
          "$lt": "2020-01-23T07:00:00.000Z"
       }
    }
    

    使用 nano db.find,可能如下所示:

    const q = {
      selector: {
        myTimestamp: {
          "$gte": "2020-01-23T06:00:00.000Z",
          "$lt": "2020-01-23T07:00:00.000Z"
        }
      }
    };
    
    myDb.find(q).then((doc) => {
       console.log(doc);
    });
    

    【讨论】:

    • 感谢您的回复,我试试看。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-24
    • 2017-12-12
    • 1970-01-01
    • 1970-01-01
    • 2020-12-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多