usa tutorial que para instalar index funciona elastic crear consultas como comandos lucene full-text-search lucene.net information-retrieval

lucene - tutorial - para que se usa elastic search



¿Cómo crear cadenas de consulta Lucene más complejas? (1)

Use la clase BooleanQuery para componer objetos de consulta. Cree uno de estos y agregue () otros objetos Query para crear una consulta disyuntiva más grande:

  • BooleanQuery q = new BooleanQuery ();
  • q.add (qFirstName, Occur.SHOULD);
  • q.add (qLastName, Occur.SHOULD);
  • ...

Las consultas atómicas se pueden construir con las clases Term y TermQuery.

(Los enlaces y el ejemplo son para Lucene Java, pero .NET debería ser similar).

Esta pregunta es un spin-off de esta pregunta. Mi consulta es doble, pero como ambas están relacionadas, creo que es una buena idea juntarlas.

  • Cómo crear consultas mediante programación. Sé que podría comenzar a crear cadenas y analizar esa cadena con el analizador de consultas. Pero a medida que reúno partes de información de otros recursos, hay una manera programática de hacerlo.
  • ¿Cuáles son las reglas de sintaxis para las consultas de Lucene?

--EDITAR--

Daré un ejemplo de requisito para una consulta que me gustaría hacer:
Digamos que tengo 5 campos:

  1. Nombre de pila
  2. Apellido
  3. Años
  4. Dirección
  5. Todo

Todos los campos son opcionales, el último campo debe buscar en todos los demás campos. Repaso todos los campos y veo si es IsNullOrEmpty (). Si no es así, me gustaría adjuntar una parte de mi consulta para que agregue la parte de búsqueda relevante.
El nombre y el apellido deben coincidir exactamente y tener más peso que los otros campos. La edad es una cadena y debe coincidir exactamente. La dirección puede variar en orden. Todo también puede variar en orden.

¿Cómo debo ir sobre esto?