Heim >Datenbank >MySQL-Tutorial >Wie extrahiere ich Attributwerte aus XML-Daten in SQL mithilfe von XQuery?
SQL: Zugriff auf Attributwerte aus XML-Daten
In SQL kann der Zugriff auf den Wert eines Attributs in einem XML-Datentyp über XQuery erreicht werden . Dadurch können Sie XML-Daten effizient abfragen und bearbeiten.
So rufen Sie den Wert des Attributs Sprache im bereitgestellten XML ab:
<email> <account language="en" ... /> </email>
Sie können Folgendes verwenden XQuery-Ausdruck:
(/email/account/@language)[1]
Dieser Ausdruck gibt an:
Um diesen Ausdruck in Ihrer SQL-Anweisung zu verwenden, können Sie Ihre Abfrage wie folgt ändern folgt:
SELECT m.Body.value('(/email/account/@language)[1]', 'nvarchar(max)') FROM Mail
Diese Abfrage gibt den Wert des Attributs Sprache als Zeichenfolge zurück.
Beispiel:
declare @xml xml = '<email> <account language="en" /> </email>' select @xml.value('(/email/account/@language)[1]', 'nvarchar(max)')
Ausgabe:
en
Sie können XQuery auch verwenden, um XML-Daten aus einer Tabelle zu verarbeiten. wie im folgenden Beispiel gezeigt:
declare @t table (m xml) insert @t values ('<email><account language="en" /></email>'), ('<email><account language="fr" /></email>') select m.value('(/email/account/@language)[1]', 'nvarchar(max)') from @t
Ausgabe:
en fr
Das obige ist der detaillierte Inhalt vonWie extrahiere ich Attributwerte aus XML-Daten in SQL mithilfe von XQuery?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!