En effet vous avez aussi une troisième possibilité :key: ""
(valeur vide)
Et vous oubliez une spécificité sur la valeur nulle.Query onkey: null
vous récupérera tous les documents où la clé est nulle ou où la clé n'existe pas.
Lorsqu'une requête sur $exists:false
récupérera uniquement le document où la clé de champ n'existe pas.
Pour revenir à votre question exacte, cela dépend de vos requêtes et des données représentées. Si vous devez conserver cela, par exemple, un utilisateur définit une valeur puis la supprime, vous devez conserver le champ comme nul ou vide. Si vous n'en avez pas besoin, vous pouvez supprimer ce champ.