Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

$bitNot (operador de expresión)

Nuevo en la versión 6.3.

$bitNot

Devuelve el resultado de una operación bit a bit not en un solo valor int o long.

El operador $bitNot tiene la siguiente sintaxis:

{ $bitNot: <expression> }

La expresión puede ser un único argumento o un arreglo con un elemento int o long.

Nota

Todos los números en mongosh son de tipo double, no enteros. Para especificar enteros en mongosh, utilice el constructor Int32() o Long(). Para obtener más información, consulte Int32 o Long.

Para saber cómo maneja su controlador de MongoDB los valores numéricos, consulte la documentación de su controlador.

Si alguno de los argumentos en el arreglo es de un tipo de datos diferente, como un string, un double o un decimal, MongoDB devuelve un error.

Si la expresión se evalúa como null, la operación devuelve null.

El ejemplo en esta página utiliza la colección switches:

db.switches.insertMany( [
{ _id: 0, a: Int32(0), b: Int32(127) },
{ _id: 1, a: Int32(2), b: Int32(3) },
{ _id: 2, a: Int32(3), b: Int32(5) }
] )

La siguiente agregación utiliza el operador $bitNot en la etapa $project:

db.switches.aggregate( [
{
$project: {
result: {
$bitNot: "$a"
}
}
}
])

La operación devuelve los siguientes resultados:

[
{ _id: 0, result: -1 },
{ _id: 1, result: -3 },
{ _id: 2, result: -4 }
]