2016-12-24 48 views
0

我在MongoDB中建立了一个由mongolabs驱动的数据库。在这一刻,我有3
列 - 用户名,借书和日期为每年的每周借用。因此,1个用户名可以借用不同日期的不同书籍。我目前使用pymongo来分析数据。我想在这个星期内获得用户名所借的所有书籍,并将其显示为列表。如何做到这一点一直困在这一个星期?使用python分析mongodb中的数据

当前数据库:

{ Username: A, 
    Book_Borrowed: XYZ, 
    Date: 11/2/10 
    } 
    { Username: B, 
    Book_Borrowed: FGH, 
    Date: 12/2/10 
    } 
    { Username: A, 
    Book_Borrowed: DWW, 
    Date: 13/2/10 
    } 
    { Username: A, 
    Book_Borrowed: GGG, 
    Date: 14/2/10 
    } 
    { Username: B, 
    Book_Borrowed: DKD, 
    Date: 14/2/10 
    } 
    { Username: C, 
    Book_Borrowed: DWW, 
    Date: 12/2/10 
    } 

所需的输出:

A: [XYZ,DWW,GGG] 
B: [FGH,DKD] 
C: [DWW] 
+0

您可以通过 “用户名” 和'$ push'需要'$ group' “Book_Borrowed”字段。 – styvane

+0

@Styvane你可以给一个伪代码或像pymongo中的一个例子 – qwerty

回答

0

尝试这样的事情

db.collection.aggregate(
{"$group": {"_id": "$username", "Booksborrowed": {"$push": "$Book_Borrowed"}}} 
)