sql >> Database teknologi >  >> RDS >> Sqlserver

Hvordan forespørger man efter XML-værdier og attributter fra tabel i SQL Server?

Faktisk er du tæt på dit mål, du skal bare bruge nodes() metoden til at opdele dine rækker og derefter få værdier:

select
    s.SqmId,
    m.c.value('@id', 'varchar(max)') as id,
    m.c.value('@type', 'varchar(max)') as type,
    m.c.value('@unit', 'varchar(max)') as unit,
    m.c.value('@sum', 'varchar(max)') as [sum],
    m.c.value('@count', 'varchar(max)') as [count],
    m.c.value('@minValue', 'varchar(max)') as minValue,
    m.c.value('@maxValue', 'varchar(max)') as maxValue,
    m.c.value('.', 'nvarchar(max)') as Value,
    m.c.value('(text())[1]', 'nvarchar(max)') as Value2
from sqm as s
    outer apply s.data.nodes('Sqm/Metrics/Metric') as m(c)

sql violindemo



  1. WEEKDAY() Eksempler – MySQL

  2. Del 3 – Kunder, opkald og møder

  3. Begrænsning af samtidige brugersessioner for et specifikt login i SQL Server

  4. Udfør en dynamisk krydstabuleringsforespørgsel