sql >> データベース >  >> NoSQL >> MongoDB

Mongodbはインスタンスを集約、グループ化、カウントします

    試してみてください:

    db.hourly.aggregate(
    [
        { "$project" : { "hourly" : "$hourlyLocations" } },
        { "$unwind" : "$hourly" },
        { $group: { _id: { country: "$hourly.countryName", city: "$hourly.cityName" }, count: { $sum: 1 } } },
        { $sort: { count: -1 } },
        {  $group: { _id: "$_id.country", cities: { $push: { city: "$_id.city", count: "$count"  } }  } }
    ]
    )
    

    要求された構造ではありません。代わりに次のようになります:

    {
        "_id" : {
            "country" : "Italy"
        },
        "cities" : [
            { "city": "Cologno Monzese", "count": 12},
            { "city": "Milan", "count": 6},
            { "city": "Rome", "count": 3},
        ]
    }
    



    1. mongodbのmap/reduceでステップバイステップでデバッグする方法

    2. タイムスタンプに基づいて選択し、タイムスタンプをゼロで更新します

    3. MapReduceのHadoopカウンターとカウンターの種類

    4. mongoでスーパーユーザーを作成する