Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A következőkre vonatkozik:SQL Server
Az XQuery-elérési utak kifejezései csomópontokat, például elemeket, attribútumokat és szövegcsomópontokat keresnek egy dokumentumban. Az elérésiút-kifejezés eredménye mindig dokumentum-sorrendben történik, az eredményütemezésben ismétlődő csomópontok nélkül. Az elérési út megadásakor használhatja a nem megadott vagy a rövidített szintaxist. Az alábbi információk a nem megadott szintaxisra összpontosítanak. A rövidített szintaxist a jelen témakör későbbi részében ismertetjük.
Jegyzet
Mivel a jelen témakörben szereplő mintalekérdezések az xml típusú oszlopokon vannak megadva, CatalogDescription és Utasítások, a ProductModel táblában meg kell ismerkednie az ezekben az oszlopokban tárolt XML-dokumentumok tartalmával és szerkezetével.
Az elérésiút-kifejezések lehetnek relatívak vagy abszolútak. Az alábbiakban a következők leírása található:
A relatív elérési út kifejezése egy vagy több lépésből áll, amelyeket egy vagy két perjel (/ vagy //) választ el egymástól. A
child::Featurespéldául egy relatív elérési út kifejezés, amelybenChildcsak a környezeti csomópont gyermekcsomópontjaira hivatkozik. Ez az a csomópont, amely jelenleg feldolgozás alatt áll. A kifejezés lekéri a környezeti csomópont <Szolgáltatások> elemcsomópont gyermekeit.Az abszolút elérési út kifejezése egy vagy két perjellel (/ vagy ///) kezdődik, amelyet egy választható relatív elérési út követ. A kifejezés kezdeti perjele (
/child::ProductDescription) például azt jelzi, hogy az abszolút elérési út kifejezés. Mivel egy kifejezés elején perjel a környezeti csomópont dokumentumgyökércsomópontját adja vissza, a kifejezés a dokumentumgyökér összes <ProductDescription> elemcsomópontját adja vissza.Ha egy abszolút elérési út egyetlen perjellel kezdődik, előfordulhat, hogy relatív elérési út követi vagy sem. Ha csak egyetlen perjelet ad meg, a kifejezés a környezeti csomópont gyökércsomópontját adja vissza. XML-adattípus esetén ez a dokumentumcsomópont.
Egy tipikus elérésiút-kifejezés lépésekből áll. A /child::ProductDescription/child::Summaryabszolút elérési út kifejezése például két, perjellel elválasztott lépést tartalmaz.
Az első lépés lekéri a dokumentumgyökér <ProductDescription> elemcsomópont gyermekeit.
A második lépés lekéri az összes lekért <ProductDescription> elemcsomópont <Összefoglaló> elemcsomópont gyermekeit, ami pedig a környezeti csomópont lesz.
Az elérésiút-kifejezések lépése lehet tengely- vagy általános lépés.
Tengely lépése
Az elérésiút-kifejezés tengelylépései a következő részekből állnak.
tengely
Meghatározza a mozgás irányát. Egy elérési út kifejezésének tengelylépése, amely a környezeti csomóponttól indul, és a tengely által megadott irányban elérhető csomópontokhoz navigál.
csomópontteszt
Megadja a kijelölendő csomóponttípust vagy csomópontneveket.
Nulla vagy több választható predikátum
A csomópontok szűréséhez jelöljön ki néhányat, és elvetsen másokat.
Az alábbi példák egy tengelystep használnak az elérésiút-kifejezésekben:
Az abszolút elérési út kifejezés (
/child::ProductDescription) csak egy lépést tartalmaz. Egy tengelyt (child) és egy csomóponttesztet (ProductDescription) határoz meg.A relatív elérési út kifejezés (
child::ProductDescription/child::Features) két lépést tartalmaz perjellel elválasztva. Mindkét lépés gyermektengelyt ad meg. A ProductDescription és a Szolgáltatások csomóponttesztek.Az
child::root/child::Location[attribute::LocationID=10]relatív elérési út kifejezés két, perjellel elválasztott lépést tartalmaz. Az első lépés egy tengelyt (child) és egy csomóponttesztet (root) határoz meg. A második lépés egy tengelylépés mindhárom összetevőjét megadja: egy tengelyt (gyermek), egy csomóponttesztet (Location) és egy predikátumot ([attribute::LocationID=10]).
A tengelylépések összetevőivel kapcsolatos további információkért lásd: Tengely megadása elérésiút-kifejezés lépésben, Csomópontteszt megadása elérésiút-kifejezési lépésben, és Predikátumok megadása elérésiút-kifejezés lépésben.
Általános lépés
Az általános lépés csak egy kifejezés, amelyet csomópontok sorozatának kell kiértékelnie.
Az SQL Server XQuery-implementációja egy elérésiút-kifejezés első lépéseként egy általános lépést támogat. Az alábbi példák az általános lépéseket használó elérésiút-kifejezésekre mutatnak be példákat.
(/a, /b)/c
id(/a/b)
További információ az id függvényről: azonosító függvény (XQuery).
Ebben a szakaszban
Tengely megadása elérésiút-kifejezés lépésben
Az elérésiút-kifejezés tengelylépésének működését ismerteti.
Csomópontteszt megadása elérési útkifejezési lépésben
A csomóponttesztek elérésiút-kifejezésben való működését ismerteti.
Predikátumok megadása egy elérésiút-kifejezés lépésben
Az elérésiút-kifejezés predikátumaival végzett munkát ismerteti.
Rövidített szintaxis használata elérésiút-kifejezés
Az elérésiút-kifejezések rövidített szintaxisának működését ismerteti.