Ugrás a tartalomhoz
100% helyi

Elasticsearch lekérdezés szerkesztő

Feltételek listáját egy Elasticsearch bool lekérdezéssé alakítsa.

Kimenet

Elasticsearch lekérdezés szerkesztő

Feltételek listáját közvetlenül adja be és ez az eszköz egy teljes Elasticsearch keresési kérést állít össze: egy bool lekérdezést must, should, must_not és filter ágakkal, szortírozást, lapozást és egy opcionális aggregációt. Ideális mindazok számára, akik kézzel írnak lekérdezéseket a Kibana Dev Tools-ban, egy REST kliensben vagy egy alkalmazás keresési rétegében, és inkább a feltételeket írják le, mintsem hogy minden alkalommal újraírnák a JSON szerkezetét.

Minden feltétel egy sor a Feltételek mezőben: egy opcionális ág (must, should, must_not, filter), egy mező neve, egy opcionális feltétel típusa (term a pontos egyezéshez, match a teljes szöveges kereséshez, range az összehasonlításokhoz, exists a mező meglétének ellenőrzéséhez) és egy érték — pontosvesszővel elválasztva. A "filter price range 100..500" egy range záradékot hoz létre; a "should title match wireless headphones" egy teljes szöveges keresést végez egy kifejezésen; a "must email exists" ellenőrzi, hogy a mező be van állítva. Hagyja ki a típust és az Alapértelmezett feltétel típusa kitölti; hagyja ki az ágat és az Alapértelmezett ág teszi ugyanezt, így egy gyors lista mint "status active; category electronics" is egy érvényes lekérdezést hoz létre.

A beállítások panel egy valódi keresési kérés többi részét kezeli: a Rendezés mező és sorrend hozzáadnak egy sort záradékot, az Oldal mérete és Eltolás kezelhetik a from/size lapozást, az Aggregáció bekapcsolja a terms vagy date_histogram gyűjtőt egy mező felett. Az Egyezések kiemelése hozzáad egy highlight blokkot bármelyik match feltételhez, és a Lekérdezés nyelv verzió követi a track_total_hits-t, amely csak az Elasticsearch 7-től érhető el.

Minden a böngészőben fut — a beírta feltételek és a kapott lekérdezés sehová sem kerülnek fel. Másolja az eredményt közvetlenül a Kibana Dev Tools-ba vagy egy kérés törzsébe, töltse le .txt fájlként, vagy küldje vissza az outputot az inputra, hogy továbbra is finomíthassa.

Gyakori kérdések

Hogyan írok feltételeket?
Egy sor egy feltételhez, pontosvesszővel elválasztva: egy opcionális ág, a mező neve, egy opcionális feltétel típusa, majd az érték — például "must status term active; filter price range 100..500".
Mit jelentenek a term, match, range és exists?
A term a mező pontos egyezésére, a match teljes szöveges keresésre, a range a mező korlátokkal való összehasonlítására szolgál (írja be: "min..max", "min..", "..max", vagy ">=5"), az exists csak azt ellenőrzi, hogy a mező jelen van — nincs szükség értékre.
Mi történik, ha kihagyom az ágat vagy a típust?
Az Alapértelmezett ág és Alapértelmezett feltétel típusa opciók kitöltik azt a részét, amelyet egy sor kihagy, így egy egyszerű "field value" sor is egy érvényes feltételt hoz létre.
A lekérdezés minden Elasticsearch verzióval működik?
A bool lekérdezés, szortírozás, lapozás, aggregáció és kiemelés az Elasticsearch 6 óta stabil. A Lekérdezés nyelv verzió opció csak egy részletet változtat meg: track_total_hits, amely az Elasticsearch 7-ben jelent meg, és egy 6.x lekérdezésből kimarad.
A lekérdezésem adata valahova feltöltésre kerül?
Nem. A lekérdezés teljes egészében a böngészőjében épül fel az Ön által megadott feltételekből és lehetőségekből — semmit sem küldenek a szerverre.