У меня есть база данных с событиями, которые произошли в игре. Я пытаюсь получить информацию о том, сколько уникальных игроков начали уровень. Я использую этот код для этого:Как я могу выбрать уникальных пользователей в mongodb
heh = list(db.events.aggregate(
[
{ "$match": {"status": 'start'}},
{"$group": {"_id": "$eventName", "players": {"$sum": 1}}},
]))
print(heh)
Но я получаю информацию о том, сколько раз начался уровень. Как я могу изменить свой код, чтобы получить правильную информацию? У уникальных пользователей есть уникальный «uid».
Вы должны предоставить более подробную информацию о фактических данных и что это означает для нам лучше помочь вам. Кроме того, пожалуйста, отформатируйте свой код в лучшую сторону. – sirfz
«статус» - это каталог в файле mongo. Сюда относятся только события, касающиеся уровней. Номер уровня хранится в каталоге «eventName», и, как я понимаю, каждый пользователь имеет свой «uid». Поэтому каждое событие имеет «eventName» и «uid», но только те, кто мне нужен, имеют «статус». Достаточно ли этой информации? В результате я должен получить что-то вроде: [{Level 1: 1111}, ...]. –