WHERE záradék (Windows Search)

Azokat a feltételeket, amelyek meghatározzák, hogy egy dokumentum szerepel-e a lekérdezés által visszaadott eredményekben, a WHERE záradék határozza meg. A legmagasabb szinten a WHERE záradék szintaxisának két része van:

...WHERE [<group_aliases>] <search_condition>
...WHERE ReuseWhere(<WHEREID>)

A záradék választható <group_alias> része leegyszerűsíti az összetett lekérdezéseket azáltal, hogy egy aliast rendel egy vagy több oszlopból álló csoporthoz. Ez javíthatja az olyan összetett lekérdezések olvashatóságát, amelyek ugyanazt az információt keresik az URL-címek által megadott több oszlopban. További információ a csoport aliasairól: WITH -- AS Group Alias Predicate.

A <keresési feltétel> WHERE záradék egy vagy több keresési predikátum, amely megfelelteti a keresési feltételeket. A keresési predikátumok olyan kifejezések, amelyek bizonyos értékekkel kapcsolatban bizonyos tényeket érvényesítenek.

A keresési feltétel eredménye logikai érték, IGAZ, ha a dokumentum megfelel a megadott keresési feltételeknek, vagy HAMIS, ha nem. Ha az eredmény IGAZ, a dokumentum lesz visszaadva. Ha az eredmény hamis , a dokumentum nem lesz visszaadva. A Microsoft Windows Search-lekérdezésekben visszaadott dokumentumok rangértékei a keresési feltételeknek megfelelően vannak hozzárendelve. A lekérdezési keresési feltételek mindegyike tartalmazhat egy RANKBY záradékot, amely támogatja a visszaadott rangértékek módosítását.

A ReuseWhere függvény több lekérdezést is hatékonyabbá tesz, amelyek ugyanazon keresési feltételeket használják. A lekérdezés WHERE záradéka a lekérdezésben egyező elemeket határozza meg. A későbbi lekérdezések megoszthatják az előző kiértékelés során elvégzett munkát az új WHERE záradékban található ReuseWhere függvénnyel.

Keresési predikátumok

A keresési feltétel egy vagy több olyan predikátumból vagy keresési feltételből áll, amely leírja, hogy a felhasználó mit keres (például WHERE System.DateCreated >'2006-04-19'). A keresési predikátumok kombinálhatók az AND logikai operátorokkal, VAGY, vagy NEM. A nem kötelező operátor NOT csak ÉS használható, és csak egy predikátum vagy keresési feltétel logikai értékének tagadására használható. Zárójelek használatával csoportosíthatja és beágyazhatja a logikai kifejezéseket.

Az alábbi táblázat a logikai operátorok elsőbbségi sorrendjét mutatja be.

Sorrend (elsőbbség) Logikai operátor
Első (legmagasabb) NEM
Második ÉS
Harmadik (legalacsonyabb) VAGY

 

Az azonos típusú logikai operátorok asszociatívak, és nincs megadva számítási sorrend. (A ÉS B) ÉS (C ÉS D) számítása (A ÉS D) ÉS (B ÉS C) a logikai eredmény módosítása nélkül.

Fontos

Helytelen: WHERE NOT CONTAINS ('számítógép')

Helyes: WHERE CONTAINS ('software') ÉS NOT CONTAINS ('computer')

 

Összetett lekérdezésekben érdemes lehet nagyobb hangsúlyt fektetni a találatokra egyes oszlopokban, mint más oszlopokban. Ha például olyan dokumentumokat keres, amelyek a "szoftvertervezést" tárgyalják, a keresett kifejezés megkeresése a dokumentum címében nagyobb valószínűséggel jó egyezés, mint az egyes szavak keresése a dokumentum szövegében. A dokumentumok ilyen módon történő rangsorolásának befolyásolása érdekében a Microsoft Windows Search lekérdezési nyelve támogatja a keresési feltételek súlyozását. Az oszlopok súlyozásával kapcsolatos további információkért lásd: CONTAINS Predikate és FREETEXT Predikate.

A Windows Search három keresési predikátumcsoportot biztosít: teljes szöveges, nem teljes szöveges és mappamélységi kereséseket. A teljes szöveges keresési predikátumok általában megfelelnek a tartalom, a cím és más oszlopok jelentésének, és támogatják a nyelvi egyeztetést (például alternatív szóalakok, kifejezések és közelségi keresés). Ezzel szemben a nem teljes szöveges keresési predikátumok megfelelnek a megadott oszlopok értékének, és nem tartalmaznak speciális nyelvi feldolgozást, de számos esetben a karakteralapú mintaegyezést kínálják. A mappamélység-predikátumok a keresési tartományt egy megadott elérési útra korlátozzák.

Jegyzet

Ha a lekérdezés egy dokumentumot ad vissza, mert egy nem teljes szöveges predikátum kiértékeli, hogy IGAZ a dokumentumhoz, a rangsor értéke 1000 lesz. A rangsor kényszerítő függvény használata módosíthatja a rangértéket.

 

Az alábbi táblázatok a teljes szöveges, a nem teljes szövegű és a mappamélységi keresési predikátumokat ismertetik.

Teljes szöveges predikátum Leírás
TARTALMAZ Támogatja a dokumentum szövegoszlopaiban (például címben, tartalomban) lévő kifejezések összetett keresését. Megkeresheti a keresési kifejezések felfújt formáit, tesztelheti a kifejezések közelségét, és logikai összehasonlításokat végezhet. A keresési kifejezések tartalmazhatnak helyettesítő karaktereket.
SZABADSZÖVEG- Olyan dokumentumokat keres, amelyek megfelelnek a keresési kifejezés jelentésének. A kapcsolódó szavak és hasonló kifejezések egyeznek, és a rangsor oszlopot a dokumentum keresési kifejezésének megfelelő közelség alapján számítják ki. A keresési kifejezések nem tartalmazhatnak helyettesítő karaktereket.

 

Nem teljes szöveges predikátum Leírás
SZERET Az oszlopértékeket egyszerű, helyettesítő karakterekkel egyező minta alapján hasonlítjuk össze.
literálérték-összehasonlítási Az oszlopértékek a sztring, a dátum, az időbélyeg, a numerikus és az egyéb literális értékekkel vannak összehasonlítva. Ez a predikátum támogatja az egyenlőséget és az olyan egyenlőtlenségeket, mint a nagyobb és kisebb, mint.
többértékű (TÖMB) összehasonlítások A többértékű oszlopok egy többértékű konstanstömbhöz vannak összehasonlítása.
NULLA A dokumentumhoz nem definiált oszlopértékek a NULL predikátum használatával észlelhetők.

 

Mappamélység Leírás
KITERJEDÉS A megadott elérési út részletes bejárását hajtja végre, beleértve az adott mappát és az összes almappát.
CÍMTÁR A megadott elérési út sekély bejárását hajtja végre, és csak az adott mappában keres.

 

Példák

Példák a WHERE záradékra, lásd az előző táblázatban hivatkozott egyes predikátumi témaköröket.

referencia

ReuseWhere függvény

Sorhalmaz tulajdonságai

FROM záradék

Keresési SQL-szintaxis áttekintése

WITH -- AS Group Alias Predikate

SCOPE és DIRECTORY predikátumok

RANK BY záradék

fogalmi

Full-Text Predikátumok

nemFull-Text predikátumok