Я думаю, что только что нашел точный ответ:
Создайте представление 'sampleview', которое выглядит так:
{
"records_by_date_product": {
"map": "function(doc) {\n emit([doc.prod_id, doc.logtime], doc);\n}"
}
}
Допустим, параметры запроса:
prod_id in [1,3]
from_date = '2010-01-01 00:00:00'
to_date = '2010-01-02 00:00:00'
Затем вам нужно будет выполнить 2 отдельных запроса в одном представлении:
http://localhost:5984/db/_design/sampleview/_view/records_by_date_product?startkey='\["1,2010-01-01%2000:00:00"\]'&endkey='\[1,"2010-01-02%2000:00:00"\]'
http://localhost:5984/db/_design/sampleview/_view/records_by_date_product?startkey='\[2,"2010-01-01%2000:00:00"\]'&endkey='\[2,"2010-01-02%2000:00:00"\]'
Обратите внимание, что один и тот же запрос выполняется каждый раз, за исключением того, что prod_id изменяется во втором запросе. Результаты должны быть сопоставлены позже. Надеюсь, это поможет!