Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Данные из поля xml  [new]
KonstMV
Member

Откуда:
Сообщений: 21
Поле xml содержит строку типа:
<Rows>
	<Row Field="Какой-то Текст">
		<Value>"Какое-то значение"</Value>
	</Row>
</Rows>


Как получить значения поля Field?
Значения Value получаю так:
SELECT
	ChangeValue.value('/Rows[1]', 'varchar(15)') as ChangeField
FROM tHistory
20 фев 19, 17:41    [21815663]     Ответить | Цитировать Сообщить модератору
 Re: Данные из поля xml  [new]
Konst_One
Member

Откуда:
Сообщений: 11512
declare @x table (ChangeValue xml);

insert into @x (ChangeValue) values('<Rows>
	<Row Field="Какой-то Текст">
		<Value>"Какое-то значение"</Value>
	</Row>
	<Row Field="Текст 2">
		<Value>"значение 2"</Value>
	</Row>
</Rows>')

SELECT
	ChangeValue.value('/Rows[1]/Row[1]/@Field', 'varchar(50)') as Row1Attr,
	ChangeValue.value('/Rows[1]/Row[1]/Value[1]', 'varchar(50)') as Row1Value,
	ChangeValue.value('/Rows[1]/Row[2]/@Field', 'varchar(50)') as Row2Attr,
	ChangeValue.value('/Rows[1]/Row[2]/Value[1]', 'varchar(50)') as Row2Value
FROM @x tHistory



но есть и другие варианты, дерзайте сами
20 фев 19, 17:50    [21815674]     Ответить | Цитировать Сообщить модератору
 Re: Данные из поля xml  [new]
KonstMV
Member

Откуда:
Сообщений: 21
Konst_One, спасибо! Практически, мгновенный ответ!!!
Вопрос закрыт!
20 фев 19, 17:53    [21815678]     Ответить | Цитировать Сообщить модератору
 Re: Данные из поля xml  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 30766
KonstMV
Как получить значения поля Field?
Значения Value получаю так:
SELECT
	ChangeValue.value('/Rows[1]', 'varchar(15)') as ChangeField
FROM tHistory
Значения Value вы получаете тожке как то некошерно
declare @x xml = N'
<Rows>
	<Row Field="Какой-то Текст">
		<Value>"Какое-то значение"</Value>
	</Row>
</Rows>
'

SELECT
	@x.value('(/Rows/Row/@Field)[1]', 'varchar(25)') as Field,
	@x.value('(/Rows/Row/Value/text())[1]', 'varchar(25)') as Value
20 фев 19, 17:55    [21815679]     Ответить | Цитировать Сообщить модератору
 Re: Данные из поля xml  [new]
KonstMV
Member

Откуда:
Сообщений: 21
alexeyvg, спасибо за корректировку!!!
20 фев 19, 18:29    [21815710]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить