Vanaf MongoDB v1.8+ kunt u het gewenste gedrag krijgen door unieke waarden te garanderen, maar meerdere documenten zonder het veld toe te staan door de sparse
in te stellen optie op true bij het definiëren van de index. Zoals in:
email : {type: String, trim: true, index: true, unique: true, sparse: true}
Of in de schaal:
db.users.ensureIndex({email: 1}, {unique: true, sparse: true});
Merk op dat een unieke, schaarse index nog steeds niet toestaat dat meerdere documenten met een email
veld met een waarde van null
, alleen meerdere documenten zonder een email
veld.
Zie http://docs.mongodb.org/manual/core/index-sparse/