$exists (Existência de Campo)

Última atualização: 2026-10-09

$exists (Existência de Campo)

$exists filtra documentos com base na presença de um campo. `{ $exists: true }` corresponde a documentos onde o campo existe e não é null; `{ $exists: false }` corresponde a documentos onde ele está ausente. É a principal ferramenta para problemas de campo ausente e combina com $ne/$gt, que de outra forma ignoram campos ausentes.

CategoriaElemento e Avaliação
Versão do MongoDB1.0+
Idioma do Exemplomongosh (Shell)

📝 Sintaxe

{ <campo>: { $exists: <booleano> } }

⚙️ Parâmetros

campoO campo do documento cuja existência será testada.
booleantrue corresponde a campos que existem, false corresponde a campos ausentes.

Retorno:Cursor dos documentos correspondentes

▶ Exemplo

Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):

// $exists: usuários que têm um email
// O campo deve existir e não ser null
db.users.find({ email: { $exists: true } })

// Usuários sem o campo email
db.users.find({ email: { $exists: false } })

Saída:

// O primeiro retorna usuários com o campo email; o segundo retorna usuários sem ele

📌 Notas

📚 Tutoriais Relacionados

❓ Perguntas Frequentes

Q$exists: true corresponde a valores null?
ANão. Um campo presente com valor null falha em $exists: true; use $type: 10 ou $eq: null nesse caso.
QComo $exists e $ne trabalham juntos?
A{ $ne: valor, $exists: true } significa que o campo existe e é diferente — evitando que $ne pule campos ausentes.
QComo verifico se um campo de array existe?
AMesmo padrão: { $exists: true }; um array vazio ainda conta como existente.
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%