使用多个属性的多个键查询 CouchDB
Query CouchDB with multiple keys for multiple properties
我正在使用 couch db 来存储订阅文档。在执行查询时,我希望能够查询多个属性并使用 "IN" 子句。例如,我有一个 subscriptionStatus
属性,它可以有多个值(Active、Failed、In_Progress 等),订阅也有一个 customerID
.
如何为 customerID = "JD212S" AND subscriptionStatus IN ["Active", "In_Progress"]
中的所有订阅创建查询
基本上向我展示特定客户的活跃和进行中的订阅。
我查看了视图组合、多个键等,但我无法做到这一点(或者我误解了文档)。
为此,我查看了许多 Stack Overflow Q/A 和 CouchDB 文档,但似乎一次只能找到一个 属性 的选项。
它看起来确实列出了重复项,但在您的上下文中,您将创建一个视图 return 多个键,然后在执行该视图时,如 link 此处所述,传入您的多键选项
// view foo/bar
var view = function(doc) {
doc.emit([doc.customerId, doc.subscriptionStatus]);
}
db.view('foo/bar', { keys: [['JD212S','Active'],
['JD212S','In_Progress']], include_docs: true });
我正在使用 couch db 来存储订阅文档。在执行查询时,我希望能够查询多个属性并使用 "IN" 子句。例如,我有一个 subscriptionStatus
属性,它可以有多个值(Active、Failed、In_Progress 等),订阅也有一个 customerID
.
如何为 customerID = "JD212S" AND subscriptionStatus IN ["Active", "In_Progress"]
中的所有订阅创建查询基本上向我展示特定客户的活跃和进行中的订阅。 我查看了视图组合、多个键等,但我无法做到这一点(或者我误解了文档)。
为此,我查看了许多 Stack Overflow Q/A 和 CouchDB 文档,但似乎一次只能找到一个 属性 的选项。
它看起来确实列出了重复项,但在您的上下文中,您将创建一个视图 return 多个键,然后在执行该视图时,如 link 此处所述,传入您的多键选项
// view foo/bar
var view = function(doc) {
doc.emit([doc.customerId, doc.subscriptionStatus]);
}
db.view('foo/bar', { keys: [['JD212S','Active'],
['JD212S','In_Progress']], include_docs: true });