sql >> Databasteknik >  >> RDS >> Sqlserver

Arbeta med SQL Server XML-datatypen

Inte säker på om jag helt förstod din fråga här - eller letar du efter detta? Du skulle ta alla /things/Fruit-elementen en "noder" och korsfoga dem mot dina "basdata" i myTable - resultatet skulle bli en rad per XML-element i ditt XML-datafält:

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

Är det vad du letar efter?

Marc




  1. Hur kan jag i Oracle upptäcka vilket datum sommartid börjar/slutar?

  2. Exekvera en lagrad procedur med markören i PHP

  3. Varför misslyckas denna trigger? Det står ogiltig identifierare

  4. Hur man ökar Max anslutningar i MySQL