Как посчитать документы, возвращенные по запросу Mango

У меня есть запрос манго:

{
  "selector": {
    "age":{
        "$eq": 22
    }
  }
}

Я хочу знать количество документов, которые удовлетворяют этому критерию.

Я знаю, что для достижения этой цели мы можем использовать функции карты сокращения, но есть ли способ сделать это, используя запрос манго, например, использовать какой-либо ключ, например, "count" в самом запросе, как мы делаем для "sort" и "fields".

Я запускаю запрос манго через оставшийся клиент и хочу получить количество документов в качестве ответа на запрос.

2 ответа

CouchDB возвращает объект. В этом объекте вы найдете массив "документы". Просто получите длину этого массива, и вы получите количество возвращенных документов.

На самом деле невозможно получить полное количество документов с помощью функции поиска. По умолчанию _find может быть возвращено не более 25 документов ( http://docs.couchdb.org/en/2.0.0/api/database/find.html).

limit (number) - максимальное количество возвращаемых результатов. По умолчанию 25. Необязательно

При увеличении этого числа время отклика увеличивается. Например, наличие 15.000 записей в базе данных вашего дивана и ограничение запроса до 999999 приведет к длительному времени ожидания.

Вернемся к вашему вопросу: после получения набора результатов просто запустите что-то вроде array.length посчитать ваши результаты.

Другие вопросы по тегам