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: как найти максимальное значение в коллекции

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.