J'ai un index Lucene qui contient des documents qui ont un champ "type", ce champ peut être l'une des trois valeurs "article", "forum" ou " Blog". Je veux que l'utilisateur puisse rechercher dans ces types (il y a une case à cocher pour chaque type de document)Lucene requête - "Correspond exactement à un de x, y, z"
Comment créer une requête Lucene en fonction des types sélectionnés par l'utilisateur?
Quelques prérequis sont:
- Si l'utilisateur ne sélectionne pas l'un des types, je veux pas résultats de ce type.
- L'ordre des résultats ne devrait pas être affecté par la restriction du champ de type.
Pour référence si je devais écrire ceci dans SQL (pour un « blog ou recherche forum ») J'écris:
SELECT * FROM Docs
WHERE [type] in ('blog', 'forum')
C'est ce que j'ai fait à la fin, bien que j'aie utilisé l'API plutôt que de la créer comme une chaîne, voir ma réponse si vous êtes intéressé. – thatismatt