$ne (Diferente)
Última atualização: 2026-10-09
$ne (Diferente)
$ne seleciona documentos onde o valor do campo não é igual ao valor especificado — a negação de $eq. `{ age: { $ne: 18 } }` corresponde a todos os documentos onde age não é 18. Assim como $eq, é sensível ao tipo e, de forma contra-intuitiva, NÃO corresponde a documentos em que o campo está ausente.
| Categoria | Comparação |
|---|---|
| Versão do MongoDB | 1.0+ |
| Idioma do Exemplo | mongosh (Shell) |
📝 Sintaxe
{ <campo>: { $ne: <valor> } }
⚙️ Parâmetros
| campo | O campo do documento a corresponder. |
|---|---|
| valor | O valor a excluir. |
Retorno:Cursor dos documentos correspondentes
▶ Exemplo
Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):
// $ne: exclui documentos onde age é 18
db.users.find({ age: { $ne: 18 } })
Saída:
// Retorna documentos onde age não é 18 (documentos com campo ausente são excluídos)
📌 Notas
- Não corresponde a documentos com o campo ausente; combine com $exists: true para incluí-los
- Em arrays, corresponde se qualquer elemento não for igual ao valor
🏷️ Tags Relacionados
💡 Casos Relacionados
📚 Tutoriais Relacionados
❓ Perguntas Frequentes
Q$ne corresponde a documentos onde o campo não existe?
ANão. $ne só corresponde a documentos onde o campo existe e o valor é diferente. Para incluir campos ausentes, adicione $exists: true.
QQual é a diferença entre $ne e $not: { $eq: ... }?
APara campos escalares os resultados são idênticos. Em arrays, $ne corresponde se qualquer elemento for diferente, enquanto $not: { $eq } exige que nenhum elemento seja igual ao valor, o que é mais estrito.
Q$ne pode corresponder a null?
ASim. $ne: null exclui documentos cujo valor é null, mas documentos onde o campo está ausente são tratados como diferentes e correspondem, então combine com $exists quando necessário.