MongoDB.local SF, Jan 15: See the speaker lineup & ship your AI vision faster. Use WEB50 to save 50%
Find out more >
Menu Docs
Página inicial do Docs
/ /

$searchMeta

$searchMeta

O estágio $searchMeta retorna diferentes tipos de documentos de resultados de metadados .

Observação

Para executar queries do $searchMeta em coleções fragmentadas, seu cluster deve executar MongoDB v6.0 ou posterior.

Um estágio de pipeline do $searchMeta tem a seguinte forma de protótipo:

{
$searchMeta: {
"index": "<index-name>",
"<collector-name>"|"<operator-name>": {
<collector-specification>|<operator-specification>
},
"count": {
<count-options>
},
"returnScope": {
"path": "<embedded-documents-field-to-retrieve>"
}
"returnStoredSource": true | false
}
}

O estágio $searchMeta recebe um documento com os seguintes campos:

Campo
Tipo
necessidade
Descrição

<collector-name>

objeto

Condicional

Nome do coletor para utilizar com a query. Você pode fornecer um documento que contenha as opções específicas do coletor como valor para esse campo. O valor deve ser facet para recuperar um mapeamento dos nomes das faceta definidas para uma matriz de compartimentos para essa faceta. Para saber mais, consulte facet (Operador de Pesquisa MongoDB). Você deve especificar isto ou <operator-name>.

count

objeto

Opcional

Documento que especifica as opções de contagem para recuperar uma contagem dos resultados. Para saber mais, consulte Resultados da pesquisa de contagem do MongoDB.

index

string

Opcional

Nome do índice do MongoDB Search a ser usado. Se omitido, o padrão é default.

A pesquisa do MongoDB não retorna resultados se você digitar incorretamente o nome do índice ou se o índice especificado ainda não existir no cluster.

<operator-name>

objeto

Condicional

Nome do operador com o qual pesquisar. Você pode fornecer um documento contendo as opções específicas do operador como valor do campo. Você deve especificar isto ou <collector-name>. $searchMeta retorna count somente os metadados padrão.

returnScope

objeto

Opcional

Objeto que define o contexto da consulta para o campo de documento incorporado especificado. Você também deve especificar returnStoredSource e defini-lo como true se a versão do cluster MongoDB for inferior a 8.2.

returnStoredSource

booleano

Condicional

Sinalizador que especifica se deve ser realizada uma pesquisa completa de documentos no banco de dados de backend ou retornar apenas os campos de origem armazenados diretamente do MongoDB Search. Se omitido, o padrão é false. Deve ser true se você especificar returnScope e a versão do cluster MongoDB for inferior a 8.2.

Para saber mais, consulte Devolver campos de origem armazenados.

O estágio $searchMeta deve ser o primeiro estágio em qualquer pipeline.

A estrutura do documento de resultados de metadados que é retornado pelo estágio $searchMeta varia de acordo com o tipo de resultados. O MongoDB Search oferece suporte aos seguintes tipos de resultados:

Tipo
Estrutura de resultados

count

O resultado da contagem incluído nos resultados indica se a contagem retornada nos resultados é uma contagem total dos resultados da pesquisa ou um limite inferior. Para saber mais, consulte Contagem de resultados.

facet

O resultado de uma query de facet é um mapeamento dos nomes de facets definidos para uma array de compartimentos dessa faceta. Para saber mais, consulte Resultados do facet.

Suponha o seguinte índice na coleção sample_mflix.movies .

{
"mappings": {
"dynamic": false,
"fields": {
"year": {
"type": "number"
}
}
}
}

A consulta a seguir pesquisa o número de filmes lançados em 1998 usando o estágio $searchMeta.

db.movies.aggregate([
{
"$searchMeta": {
"range": {
"path": "year",
"gte": 1998,
"lt": 1999
},
"count": {
"type": "total"
}
}
}
])
[ { count: { total: Long("552") } } ]

Se você estiver enfrentando problemas com suas queries $search do MongoDB Search, consulte Solucionar problemas de queries.

Voltar

Documentos: $search

Nesta página