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

Utilizzo del tipo di dati XML di SQL Server

Non sono sicuro di aver capito completamente la tua domanda qui - o stai cercando questo? Prenderesti tutti gli elementi /things/Fruit a "nodi" e li uniresti ai tuoi "dati di base" nella mia tabella - il risultato sarebbe una riga per elemento XML nel tuo campo dati XML:

select 
   omID,
   T.Fruit.query('.')
from 
   dbo.myTable
cross apply
   omText.nodes('/things/Fruit') as T(Fruit)
where 
   T.Fruit.value('(title)[1]', 'varchar(50)') = 'X'
select 
   count(*)
from 
   dbo.myTable
cross apply
   omText.nodes('/things/Fruit') as T(Fruit)
where 
   T.Fruit.value('(imageId)[1]', 'int') = 55

È quello che stai cercando?

Marco