Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

$bitNot (operador de expressão )

Novidades na versão 6.3.

$bitNot

Retorna o resultado de uma operação bitwise not em um único valor int ou long .

O operador $bitNot tem a seguinte sintaxe:

{ $bitNot: <expression> }

A expressão pode ser um único argumento ou uma array com um elemento int ou long .

Observação

All numbers in mongosh are doubles, not integers. To specify integers in mongosh, use the Int32() or the Long() constructor. To learn more, see Int32 or Long.

Para saber como seu driver MongoDB lida com valores numéricos, consulte a documentação do driver.

Se algum argumento na array for de um tipo de dados diferente, como uma string, duplo ou decimal, o MongoDB retornará um erro.

Se a expressão avaliar para null, a operação retornará null.

O exemplo nesta página utiliza a collection 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) }
] )

A seguinte agregação utiliza o operador $bitNot na etapa $project :

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

A operação retorna os seguintes resultados:

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