Adición de un unique index en OPERATION.OPERATION_ID se asegurará de que no hay dos documentos distintos contendrán un elemento en funcionamiento con el mismo id_operación.
Si desea evitar que un solo documento tenga dos elementos en OPERACIÓN con el mismo ID_ORGANIZACIÓN, no puede usar índices únicos; Deberá usar los operadores de actualización establecidos (como $ set y $ addToSet). Se podría convertir en un subdocumento OPERACIÓN introducido por id_operación, así:
{ "_ID" : 11, NAME : "ruben", OPERATION : {"100" : {NAME : "Check"} }}
A continuación, puede exigir la unicidad mediante la emisión de actualizaciones con $ engarzar; por ejemplo:
db.<collection>.update({NAME: "ruben"}, {$set: {"OPERATION.100.NAME": "Uncheck"}})
En cuanto a los valores nulos: MongoDB no cuentan con limitaciones que no son nulos en los campos (que ni siquiera forzar un campo determinado a tener un solo tipo), por lo que tendrá que asegurarse en su aplicación que los valores nulos no están insertados.
Hola quiero insertar valores pero tener un nombre único, como el nombre de usuario para iniciar sesión, cómo hacer un nombre de usuario único al insertarlo en una colección de inicio de sesión –