Ez a bejegyzés bemutatja:
- Mi az a ' elmosódott ' Lekérdezés?
- Mi az a ' mérkőzés ' Lekérdezés?
- A különbség köztük ' elmosódott ” és „ mérkőzés ' Lekérdezés
Mi az a „fuzzy” lekérdezés?
A ' elmosódott ' lekérdezés egy Query DSL, amely más műveleteket hajt végre, mint például a karakter megváltoztatása, a karakter beszúrása vagy a karakter eltávolítása a ' Levenshtein szerkesztési távolság ” távolságot. Általában megtalálja a különbséget a kifejezések között, és az eredményt egy olyan dokumentumban adja vissza, amely közelebb áll a keresett kifejezéshez, vagy csaknem hasonló ahhoz.
Mi az „egyezés” lekérdezés?
A ' mérkőzés ” lekérdezés a Query DSL egy másik típusa, amelyet az adott adatok (például karakterlánc, szám vagy szöveg) egyeztetésére vagy keresésére használnak. Ez egy ' teljes szöveg ” alapú lekérdezés, és teljes szöveges keresést hajt végre, és a keresett kifejezésnek pontosan megfelelő találatokat adja vissza. Ha a kifejezés nem egyezik a keresett kifejezéssel, akkor null karakterláncot vagy false értéket ad vissza.
A „fuzzy” és a „match” lekérdezés közötti különbség
Mindkét ' elmosódott ” és „ mérkőzés ” lekérdezések keresési célokra szolgálnak. A legfontosabb különbség e két lekérdezés között az, hogy a „fuzzy” lekérdezés fuzzy keresést végez, és olyan eredményt ad vissza, amely hasonló vagy közel áll a keresett kifejezéshez. Ezzel szemben a „match” lekérdezés azokat az eredményeket adja vissza, amelyek pontosan megfelelnek a keresett kifejezésnek.
A jobb megértés érdekében kövesse az alábbi példákat:
1. példa: Fuzzy keresés „fuzzy” lekérdezéssel
Tegyük fel, hogy a felhasználó meg akarja találni azt a dokumentumot, amely Kijelölés ' értéke ' Szerző ”. Végezzünk keresést, amely közelebbi egyezést talál. Ehhez használja a „ elmosódott ” lekérdezés olyan dokumentumban való kereséshez, amely Kijelölés ' érték egyenlő vagy közelebb van' szerző ”:
Szerezd be a linuxhint-et / _keresés{
'lekérdezés' : {
'elmosódott' : {
'Kijelölés' : 'szerző'
}
}
}
Az alábbi kimenet azt mutatja, hogy a dokumentum azonosítója ' 1 ' van egy ' Kijelölés ' érték közel a ' szerző ” keresett kifejezés:
De ha a fenti példát a „ mérkőzés ' lekérdezést, akkor küld egy ' null karakterlánc ”, mivel a pontosan egyező kifejezést adja vissza.
2. példa: Fuzzy keresés „Match” lekérdezéssel
Vegyük ugyanezt a példát, és alkalmazzuk a „ mérkőzés ' lekérdezés, hogy megkeresse a '' Kijelölés ' értéke ' szerző ”:
Szerezd be a linuxhint-et / _keresés{
'lekérdezés' : {
'mérkőzés' : {
'Kijelölés' : 'szerző'
}
}
}
Az alábbi kimenet azt mutatja, hogy a „ mérkőzés ' lekérdezés nem talál közelebbi eredményeket, és egy ' nulla ' húr:
Módosítsuk a keresett értéket a ' szerző ' nak nek ' Szerző ” és futtassa a „ mérkőzés ” lekérdezés az alábbiak szerint:
Szerezd be a linuxhint-et / _keresés{
'lekérdezés' : {
'mérkőzés' : {
'Kijelölés' : 'Szerző'
}
}
}
Itt láthatja a „ mérkőzés ' lekérdezés az azonosítóval rendelkező dokumentumot adja vissza' 1 ”. Mivel az 1. dokumentum pontosan egyezik a keresett kifejezésekkel:
Ennyi a különbség a „ elmosódott ' lekérdezés és egy ' mérkőzés ' lekérdezés.
Következtetés
A ' elmosódott ” lekérdezés fuzzy keresést végez, és a keresett kifejezéssel szorosan megegyező eredményeket adja vissza. Azonban a ' mérkőzés ” lekérdezés nem támogatja a fuzzy keresést, és azokat az eredményeket adja vissza, amelyek pontosan megfelelnek a keresett kifejezésnek. Ez a blog bemutatja a különbséget a fuzzy lekérdezés és az egyezési lekérdezés között.