

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# \$1not
<a name="not"></a>

El `$not` operador se usa para negar el resultado de una expresión dada. Le permite seleccionar documentos en los que la condición especificada no coincide.

La versión 2.0 de Planner agregó compatibilidad con índices para `$not {eq}` y`$not {in}`.

**Parámetros**
+ `expression`: La expresión para negar.

## Ejemplo (MongoDB Shell)
<a name="not-examples"></a>

El siguiente ejemplo muestra cómo utilizar el `$not` operador para buscar documentos en los que el `status` campo no es igual a «activo».

**Cree documentos de muestra**

```
db.users.insertMany([
  { name: "John", status: "active" },
  { name: "Jane", status: "inactive" },
  { name: "Bob", status: "pending" },
  { name: "Alice", status: "active" }
]);
```

**Ejemplo de consulta**

```
db.users.find({ status: { $not: { $eq: "active" } } });
```

**Salida**

```
[
  {
    _id: ObjectId('...'),
    name: 'Jane',
    status: 'inactive'
  },
  {
    _id: ObjectId('...'),
    name: 'Bob',
    status: 'pending'
  }
]
```

## Ejemplos de código
<a name="not-code"></a>

Para ver un ejemplo de código para usar el `$not` comando, elija la pestaña del idioma que desee usar:

------
#### [ Node.js ]

```
const { MongoClient, Filters } = require('mongodb');

async function main() {
  const client = await MongoClient.connect('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false');
  const db = client.db('test');
  const collection = db.collection('users');

  const result = await collection.find({
    status: { $not: { $eq: "active" } }
  }).toArray();

  console.log(result);

  await client.close();
}

main();
```

------
#### [ Python ]

```
from pymongo import MongoClient
from bson.son import SON

client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false')
db = client['test']
collection = db['users']

result = collection.find({
    "status": {"$not": {"$eq": "active"}}
})

for doc in result:
    print(doc)

client.close()
```

------