Mein Hauptziel ist es, eine Abfrage zu schreiben, die nach dem Suchtext suchen müssen und wenn ein Filter des Ladens Port oder Entladen Port angewendet wird, dann muss es aus dem Ergebnis der Suchtext filtern.Elasticsearch bool Abfrage mit Filter und sollte
Und wenn kein Filter angewendet wird, sollte es weiter gehen.
Für zB: Ich suche nach Jeans und wenn ich Filter anwende muss der Ladeport Indien sein und sein Entladeport muss US sein.
Ich habe versucht, diesen Bericht zu schreiben, aber es gibt kein passendes Ergebnis.
{
"query": {
"bool": {
"should": [
{
"bool": {
"must": [
{
"query_string": {
"query": searchText
}
}
]
}
},
{
"terms": {
"loadingPort":loadingPortArray
}
},
{
"terms": {
"unloadingPort":unloadingPortArray
}
}
]
}
}
}
Bitte lesen Sie [Unter welchen Umständen kann ich „dringend“ oder andere ähnliche Ausdrücke auf meine Frage hinzufügen, um schneller Antworten zu erhalten?] (// meta.stackoverflow.com/q/326569) - die Zusammenfassung ist, dass dies kein idealer Weg ist, um Freiwillige anzusprechen, und ist wahrscheinlich kontraproduktiv, um Antworten zu erhalten. Bitte unterlassen Sie das Hinzufügen zu Ihren Fragen. – halfer