Python 如何筛选组合键?

Python 如何筛选组合键?,python,couchdb,Python,Couchdb,我需要筛选此视图: function (doc) { if (doc.doc_type == 'asd'){ emit([doc.date, doc.string_key_0, doc.string_key_1], doc.list_field); }; } 我有: 但该视图仅使用START\u TIME和END\u TIME进行过滤。它只是忽略了STRING0/STRING1键过滤器。CouchDB中没有“键过滤器”这样的东西 您发射到视图中的每个项目都将按其

我需要筛选此视图:

function (doc) {
    if (doc.doc_type == 'asd'){
        emit([doc.date, doc.string_key_0, doc.string_key_1], doc.list_field);
    };
}
我有:


但该视图仅使用
START\u TIME
END\u TIME
进行过滤。它只是忽略了
STRING0
/
STRING1
键过滤器。

CouchDB中没有“键过滤器”这样的东西

您发射到视图中的每个项目都将按其键排序,然后您可以找到给定startkey和endkey之间的所有项目。在您的情况下,项目首先按日期排序,然后按字符串\u键\u 0排序,然后按字符串\u键\u 1排序


听起来您只希望看到“开始时间”和“结束时间”之间的项目,其中所有项目的第二个项目都有“STRING0”,第三个项目有“STRING1”,但CouchDB视图不是这样工作的。它们是按整个键排序的一维项目列表。

Hi,一位同事给出了一个解决方案,我更改了视图[doc.string\u key\u 0,doc.string\u key\u 1,doc.date]的键,然后用[string\u 0,string\u 1,date\u start/end]进行过滤。。。如果我只需要按日期筛选,我会开始=['a','a',date_start],end=[{},{},date_end]这项工作:感谢阅读并回答我的问题。该范围将包括['b',a',date_start](以及其他值)。这就是你想要的吗?您无法对startkey和endkey的各个项进行筛选,只能获取两个键之间的所有值。您好,现在不适用于date。。。对于前两个关键点:P,我将创建更多视图,并根据过滤器使用所需的视图。
key_filter_0 = ['START_TIME', 'STRING0', 'STRING1']
key_filter_1 = ['END_TIME', 'STRING0', 'STRING1']
VIEW[key_filter_0:key_filter_1]