title: MongoDb group if not already grouped
body: <p>Trying to figure out the syntax to make a mongoDB group that would contain the documents that haven't been grouped because it didn't pass the conditional. </p>
  
  <p>Document looks in part like </p>
  
  <pre><code>{ 
  "_id" : ObjectId("value"), 
  "updatedAt" : ISODate("value"), 
  "zip" : "11209", 
  "state" : "NY", 
  "city" : "New York", 
  }
  </code></pre>
  
  <p>I created mutually exclusive string arrays for matching the other groups, like </p>
  
  <pre><code>east_ny_zipcodes = ["11209", "11210", "11211", ...]
  lower_ny_zipcodes = ["11212", "11213", "11214", ...]
  </code></pre>
  
  <p>This is an example query from @Neal Lunn with some defined groups and values</p>
  
  <pre><code>db.zips.aggregate([
    { "$group": {
      "_id": null,
      "lower_ny": {
        "$sum": {
          "$cond": [{ "$in": [ "$zip", lower_ny_zipcodes ] },1,0]
        }
      },
      "east_ny": {
        "$sum": {
          "$cond": [{ "$in": [ "$zip", east_ny_zipcodes ] },1,0]
        }
      },
      "upper_ny": {
        "$sum": {
          "$cond": [{ "$in": [ "$zip", upper_ny_zipcodes ] },1,0]
        }
      }
    }}
  ])
  </code></pre>
  
  <p>I would like to create another catch all group that would catch everything that these defined groups didn't, but also give me the documents and not just count so I can drill down into it, something like </p>
  
  <pre><code>"other_zips":{
     "$push":{
       "$cond": [{ "$nin": [ "$zip", lower_ny, east_ny, upper_ny,...]}]
  }
  </code></pre>