As far as I have tested, it looks like the problem could be the `cartodb_id`. Follow these steps, and you should get the union right:

* First, I recommend applying this query in the dataset view:

<!-- postgresql -->

    SELECT 
      max(cartodb_id) as cartodb_id, 
      area_zip_r, 
      ST_union(the_geom) as the_geom
    FROM 
      zip_rollup_w_modulus_id_copy_1
    GROUP BY 
      area_zip_r

* Secondly, create a new dataset from the query.
* If you count the number of features, the result will be the expected: `2715`.