Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 20947|Resposta: 1

Consultas compostas ElasticSearch devem, devem, must_not usar

[Copiar link]
Publicado em 28/12/2018 12:01:09 | | |
Consulta conjunta BOOL: Deve, deve, must_not

Se quisermos solicitar algo parecido com "conteúdo com BMW, mas não na tag", precisamos usar a consulta federada bool.

A consulta conjunta usará três palavras-chave: deve, deve, must_not.

Esses três podem ser entendidos dessa forma

must: O documento deve corresponder exatamente às condições
should: deve ter mais de uma condição, e se pelo menos uma condição for cumprida, este documento atenderá a se
must_not:O documento não deve corresponder aos critérios

Introdução ao site oficial:https://www.elastic.co/guide/cn/ ... bining-filters.html

Consultar DSL

match_all Consulta

Todos os documentos podem ser consultados, e é a instrução padrão sem condições de consulta.


Essa consulta é frequentemente usada para mesclar filtros. Por exemplo, você precisa recuperar todas as caixas de correio, e toda a relevância dos documentos é a mesma, então o _score que você recebe é 1.

Consulta de correspondência

Uma consulta de correspondência é uma consulta padrão que basicamente é usada tanto para uma consulta em texto completo quanto para uma consulta exata.

Se você usar corresponder para consultar um campo de texto completo, ele usará o analisador para analisar os caracteres da consulta antes da consulta propriamente dita:



Se você especificar um valor exato em correspondência, ele buscará seu valor dado quando encontrar um número, data, booleano ou not_analyzed string:


Dica: Ao fazer uma busca por correspondência exata, é melhor usar instruções de filtro porque as instruções de filtro armazenam dados em cache.

Uma consulta de correspondência só pode buscar um valor exato que especifique um campo exato, e tudo o que você precisa fazer é especificar o nome correto do campo para evitar erros de sintaxe.

multi_match Consulta

multi_match consulta permite que você pesquise vários campos ao mesmo tempo com base em uma consulta de correspondência, e procure um em vários campos ao mesmo tempo:


Consulta BOOL

Consultas bool são semelhantes ao filtro bool e são usadas para mesclar múltiplas cláusulas de consulta. A diferença é que o filtro bool pode indicar diretamente se a correspondência foi bem-sucedida, enquanto a consulta bool calcula o _score (pontuação de correlação) de cada cláusula de consulta.

must:: 查询指定文档一定要被包含。
must_not:: Documentos especificados para consulta não devem ser incluídos.
should:: 查询指定文档,有则可以为文档相关性加分。

A consulta a seguir mostrará que o campo de título contém "como ganhar milhões" e que o campo "tag" não está marcado como spam. Se forem rotulados como "com estrela" ou tiverem data de lançamento antes de 2014, então esses documentos correspondentes estarão em um nível mais alto do que sites similares:


Dica: Se não houver cláusula de obrigação na consulta bool, deve haver pelo menos uma cláusula de deved. Mas se houver uma cláusula must, então a consulta também pode ser feita sem a cláusula need.

Consulta de coringas

Use consultas padrão de shell de coringa

A consulta a seguir corresponde a documentos contendo W1F 7HW e W2F 8HW:


Por exemplo, a consulta a seguir para nome de host corresponde ao seguinte coringa da shell:


Consulta regexp

Digamos que você queira combinar apenas códigos postais que começam com W seguido de números. Usar consultas regexp permite que você escreva padrões mais complexos:



Essa expressão regular especifica que a entrada deve começar com W, seguido por um número de 0 a 9, seguido por um ou mais outros caracteres.

O exemplo a seguir mostra todos os inícios regulares com wxopen


Consulta ao prefixo

Com qual caractere ele começa, você pode usar o prefixo de forma mais simples, como no exemplo abaixo:


Correspondência de Frases

Quando você precisa encontrar algumas palavras próximas, você usa match_phrase consulta:


Semelhante às consultas de correspondência, match_phrase consulta primeiro analisa a string de consulta para produzir uma lista de termos. Ele vai procurar todas as entradas,
No entanto, apenas documentos contendo todos os termos de busca são mantidos, e as posições dos termos devem ser adjacentes. Uma consulta para a expressão Raposa Rápida não vai corresponder
Qualquer uma de nossas documentações, já que nenhuma documentação contém entradas rápidas e de caixas adjacentes uma à outra.
match_phrase consulta também pode ser escrita como uma consulta de correspondência de frase tipográfica:







Anterior:Adquirido pela China Accounting Online School em 18 de dezembro (Campo de Treinamento de Desalfandega Nível 6 de Prática Contábil)
Próximo:C# regex assume o valor da tag A href em HTML
Publicado em 22/11/2022 14:25:30 |
Aprenda es, obrigado proprietário
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com