vendredi 19 juin 2015

Mongo db query group by and conditional

The below is mongo document

[  
{  
    "AppName":"WhatsApp",
    "SessionTimeStamp":{  
        "Start":            ISODate("2015-06-02T05:36:49.045            Z"),
        "End":            ISODate("2015-06-02T05:36:56.045            Z")

    },
    "Actions":[  
        {  
            "Type":"impressions",
            "count":1

        },
        {  
            "Type":"clicks",
            "Count":2

        }            {  
            "Type":"impressions",
            "count":1

        },

    ]
},
{  
    "AppName":"WhatsApp",
    "SessionTimeStamp":{  
        "Start":            ISODate("2015-06-02T05:36:49.045            Z"),
        "End":            ISODate("2015-06-02T05:36:56.045            Z")

    },
    "Actions":[  
        {  
            "Type":"impressions",
            "count":1,

        },
        {  
            "Type":"clicks",
            "Count":2

        }
    ]
},
{  
    "AppName":"hike",
    "SessionTimeStamp":{  
        "Start":            ISODate("2015-06-02T05:36:49.045            Z"),
        "End":            ISODate("2015-06-02T05:36:56.045            Z")

    },
    "Actions":[  
        {  
            "Type":"impressions",
            "count":3

        },
        {  
            "Type":"clicks",
            "Count":4,

        }
    ]
},
{  
    "AppName":"hike",
    "SessionTimeStamp":{  
        "Start":            ISODate("2015-06-02T05:36:49.045            Z"),
        "End":            ISODate("2015-06-02T05:36:56.045            Z")

    },
    "Actions":[  
        {  
            "Type":"impressions",
            "count":3

        },
        {  
            "Type":"clicks",
            "Count":4

        }
    ]
}

]

The require output is input is date interval (I mean within the week or month startdate and end date)

[  
{  
    "App":"whatsapp",
    "clicks":4,
    "impressions":3
},
{  
    "App":"hike",
    "clicks":8,
    "impressions":6
}

]

Here total clicks/ impresseions in o/p are sum counts. Please help me to write the query.

Aucun commentaire:

Enregistrer un commentaire