首页 > 解决方案 > 多列上 SELECT DISTINCT 的 MongoDB 等效项

问题描述

我对 MongoDB 很陌生。我正在尝试使用遵循此结构的文档查询集合(还有更多字段,但只需要这两个):

{game_id: xxxxxxx,
 season: 2020,
 schedule: { 
      game_key:
  }
}

我正在尝试获取所有不同的 game_ids 和 game_keys,基本上相当于 SELECT DISTINCT game_id, game_key FROM x WHERE season = 2020。

根据我的研究,如果您尝试根据需要使用聚合的多列获得不同的值:

cursor = collection.aggregate([{ '$group': {'_id': { 'game_id': "$game_id", 'schedule': {"game_key":"$game_key" }}}}])
df = pd.DataFrame(iter(cursor))
print(df.head())

但是,我只会得到一个空的 DataFrame。

标签: pandasmongodbaggregatepymongo

解决方案


推荐阅读