i have a entity collection like this:
 {
        "_id" : ObjectId("55f93cedc4fd0e1f309aea64"),
        "entityType" : "1",
        "identifierIdentity" : [
                {
                        "identifierTypeCode" : "NPI",
                        "identifierValue" : "111"
                },
                {
                        "identifierTypeCode" : "NPI",
                        "identifierValue" : "123"
                },
                {
                        "identifierTypeCode" : "NPI",
                        "identifierValue" : "141"
                },
                {
                        "identifierTypeCode" : "SSN",
                        "identifierValue" : "155"
                }
        ]
}
{
        "_id" : ObjectId("55f93cedc4fd0e1f309aea65"),
        "entityType" : "2",
        "identifierIdentity" : [
                {
                        "identifierTypeCode" : "NPI",
                        "identifierValue" : "111"
                },
                {
                        "identifierTypeCode" : "NPI",
                        "identifierValue" : "123"
                },
                {
                        "identifierTypeCode" : "SSN",
                        "identifierValue" : "155"
                }
        ]
}
{
        "_id" : ObjectId("55f93cedc4fd0e1f309aea66"),
        "entityType" : "3",
        "identifierIdentity" : [
                {
                        "identifierTypeCode" : "SSN",
                        "identifierValue" : "111"
                },
                {
                        "identifierTypeCode" : "SSN",
                        "identifierValue" : "123"
                }
        ]
}
in the above identifierIdentity is an array of documents.
I am trying to get the entity count where "identifierTypeCode" : "NPI" is greater than or equal to two.
I am able to get this using java code but i have millions of records which is taking a lot of time. I want to know whether is their a way i can achieve this in a single query.