У меня есть следующий столбец XML в SQL:Как извлечь все значение элемента из столбца XML в SQL
Create table dbo.sampleXML(ID int identity(1,1) primary key,
Name char(10) not null,
content xml null)
go
insert into dbo.sampleXML (Name,content) values ('ss',CAST('<Employee>
<FirstName> ss </FirstName>
<LastName> nn </LastName>
<Gender> Male </Gender>
<Age>31</Age>
</Employee>
' as xml))
insert into dbo.sampleXML (Name,content) values ('xx',CAST('<Employee>
<FirstName> xx </FirstName>
<LastName> yy </LastName>
<Gender> Male </Gender>
<Age>3</Age>
</Employee>
insert into dbo.sampleXML (Name,content) values ('dd',CAST('<Employee>
<FirstName> ss </FirstName>
<LastName> dd </LastName>
<Gender> Female </Gender>
<Age>30</Age>
</Employee>
Пробовал читать все значения из XML, чей пол мужского пола. Пытались это
select content.query ('/Employee/FirstName') as FirstName,content.query('/Employee/Gender[1]') as Gender from dbo.sampleXML where content.value ('/Employee/Gender','varchar(10)')='Male'
Но перед ошибка «выберите content.query ('/ Employee/FirstName'), как FirstName, content.query ('/ Employee/Пол [1]), как Пол из dbo.sampleXML где content.value ('/ Employee/Пол', 'VARCHAR (10)') = 'Мужской'»
ОП не хотел, чтобы сделать первое лицо мужского пола, но и фильтровать все мужские записи ... – Shnugo
Судя по данным выборки OP, есть только один сотрудник в XML столбец в строке таблицы ... не знаю о его реальных данных tho – har07
Да, правда ... Мой плохой ... Счастливое кодирование! – Shnugo