Ich habe einen Lucene-Index, der Dokumente enthält, die ein "type" -Feld haben, dieses Feld kann einen der drei Werte "article", "forum" oder " Blog ". Ich möchte, dass der Benutzer innerhalb dieser Typen suchen kann (es gibt ein Kontrollkästchen für jeden Dokumenttyp)Lucene Query - "Entsprechen genau eines von x, y, z"
Wie erstelle ich eine Lucene-Abfrage abhängig davon, welche Typen der Benutzer ausgewählt hat?
Ein paar Voraussetzungen sind:
- Wenn der Benutzer nicht einer der Typen auswählt, ich will keine Ergebnisse von diesem Typ.
- Die Reihenfolge der Ergebnisse sollte nicht durch Einschränkung des Typfeldes beeinflusst werden.
als Referenz, wenn ich dies in SQL schreiben war (für ein „Blog oder Forum search“) schreibe ich würde:
SELECT * FROM Docs
WHERE [type] in ('blog', 'forum')
Dies ist, was ich am Ende getan habe, obwohl ich die API verwendet habe, anstatt es als String zu erstellen, siehe meine Antwort, wenn Sie interessiert sind. – thatismatt