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.
See how MongoDB 9.0 delivers up to 2x higher throughput.
MongoDB Branding Shape
Register now >
Menu Docs

$in (operador de expressão )

$in

Retorna um booleano indicando se um valor especificado está em uma matriz.

Observação

Este documento descreve o operador de agregação $in. Para o operador de query $in, veja $in (operador de predicado de query).

$in tem a seguinte sintaxe de expressão do operador:

{ $in: [ <expression>, <array expression> ] }
Operando
Descrição

<expression>

Qualquer expressão válida expressão.

<array expression>

Qualquer expressão válida que resolva para uma array.

Ao contrário do operador de query $in, o operador $in de agregação não permite correspondência por expressões regulares.

Exemplo
Resultados

{ $in: [ 2, [ 1, 2, 3 ] ] }

true

{ $in: [ "abc", [ "xyz", "abc" ] ] }

true

{ $in: [ "xy", [ "xyz", "abc" ] ] }

false

{ $in: [ [ "a" ], [ "a" ] ] }

false

{ $in: [ [ "a" ], [ [ "a" ] ] ] }

true

{ $in: [ /^a/, [ "a" ] ] }

false

{ $in: [ /^a/, [ /^a/ ] ] }

true

$in falha com um erro em um dos seguintes casos: se a expressão $in não receber exatamente dois argumentos ou se o segundo argumento não for resolvido para uma array.

O exemplo a seguir usa a coleção movies do conjunto de dados de amostra sample_mflix. Para obter detalhes sobre como carregar esse conjunto de dados em sua implantação, consulte Carregar o conjunto de dados de amostra.

Esta operação de agregação analisa a array genres em cada filme e determina se a string "Drama" está presente:

db.movies.aggregate( [
{ $match: { runtime: { $gt: 1000 } } },
{
$project:
{
_id: 0,
title: 1,
hasDrama: { $in: [ "Drama", "$genres" ] }
}
}
] )
[
{
title: 'Centennial',
hasDrama: true
},
{
title: 'Baseball',
hasDrama: false
}
]
Avalie esta página