Mongodb: как посчитать отдельные значения в поле


Вы можете использовать следующие методы для подсчета различных значений в определенном поле в MongoDB:

Способ 1. Найдите список различных значений.

 db.collection.distinct( 'field_name' )

Способ 2: найти количество различных значений

 db.collection.distinct( 'field_name' ).length

В следующих примерах показано, как использовать каждый метод с командой по сбору данных со следующими документами:

 db.teams.insertOne({team: " Mavs ", position: " Guard ", points: 31 })
db.teams.insertOne({team: " Mavs ", position: " Guard ", points: 22 })
db.teams.insertOne({team: " Rockets ", position: " Center ", points: 19 })
db.teams.insertOne({team: " Rockets ", position: " Forward ", points: 26 })
db.teams.insertOne({team: " Cavs ", position: " Guard ", points: 33 })

Пример 1. Найдите список различных значений.

Мы можем использовать следующий код, чтобы найти список различных значений в поле «команда»:

 db.teams.distinct( 'team' )

Этот запрос возвращает следующий результат:

 ['Cavs', 'Mavs', 'Rockets']

Результат показывает три различных названия групп всех документов.

Мы также могли бы использовать следующий код, чтобы найти список различных значений в поле «позиция»:

 db.teams.distinct( 'position' )

Этот запрос возвращает следующий результат:

 ['Center', 'Forward', 'Guard']

Примечание . MongoDB по умолчанию сортирует отдельные значения в алфавитном порядке.

Пример 2. Найдите количество уникальных значений.

Мы можем использовать следующий код для подсчета количества различных значений в поле «команда»:

 db.teams.distinct( 'team' ).length

Этот запрос возвращает следующий результат:

 3

Это говорит нам о том, что в поле «команда» есть 3 различных значения.

Мы также можем использовать следующий код для подсчета количества уникальных значений в поле «точек»:

 db.teams.distinct( 'points' ).length

Этот запрос возвращает следующий результат:

 5

Это говорит нам о том, что в поле «точек» имеется 5 различных значений.

Примечание . Полную документацию по отдельной функции можно найти здесь .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в MongoDB:

MongoDB: как группировать и считать
MongoDB: как группировать по нескольким полям
MongoDB: как найти максимальное значение в коллекции

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *