Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

168
Views
¿Cómo hacer una coincidencia exacta en la búsqueda elástica?

Quiero encontrar una coincidencia exacta. Si no hay una coincidencia. No quiero anular .

Estoy buscando esta identificación 6a8c283f-1e75-ec11-8943-000d3a15f525 . me esta dando esta salida

  • fcf0dd4e-abbc-ec11-983f-0022482588e9

Pero estos no coinciden, solo ec11 coincide.

Intenté esta consulta de búsqueda

 result = await client.search({ index: 'products', "query": { "match": { "sysid":sysid } } })
about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

El problema es que su campo sysid es de tipo text y, por lo tanto, se analiza en el momento de la indexación y se tokeniza en fcf0dd4e , abbc , ec11 , 8943 y 000d3a15f525 .

Además, al buscar mediante una consulta de coincidencia, el término buscado también se analiza en los siguientes tokens 6a8c283f , 1e75 , ec11 , 8943 , 000d3a15f525 .

Como viste, la coincidencia funciona porque ec11 coincide.

Para una coincidencia exacta, lo que debe hacer es ejecutar su consulta en un campo de keyword . Tal vez tenga suerte y su asignación ya contenga un subcampo sysid.keyword . De lo contrario, debe cambiar su mapeo y reindexar sus datos.

Entonces podrá ejecutar su consulta de term de esta manera y obtener su coincidencia exacta:

 "term": { "sysid.keyword":sysid }
about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!