Wir verwenden die haschild Abfrage, um die übergeordneten Dokumente basierend auf der Bedingung zu finden.
Wir haben zwei Arten
Trichter Probe doc
%Vor%** Seiten Beispieldokument **
%Vor%Bedingung1:
Suchen Sie das untergeordnete docbasierte untergeordnete Dokument " besuchte_seite " enthält "home".
%Vor%Es funktioniert perfekt.
Bedingung2
Suchen Sie das übergeordnete docbasierte untergeordnete Dokument " visited_page " Wert enthält NICHT "home".
%Vor%Aber diese Abfrage hat falsche Ergebnisse zurückgegeben.
Ausgabe der Abfrage
%Vor%Sie können sehen, dass die übergeordnete ID (trichter_id: 12345) untergeordnetes Dokument die besuchte Seite mit dem Wert "home" enthält. Aber das kehrt auch zurück.
Erwartetes Ergebnis
%Vor%Tags und Links java elasticsearch