Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / xml, текст у элементов найти / 6 сообщений из 6, страница 1 из 1
22.07.2019, 19:10
    #39840145
NewIvanovec
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xml, текст у элементов найти
как можно вытащить текст blablabla и blablabla22222 у элементов MetricsSuper
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
declare @xml xml = '<Content>
	<MetricsSuper>blablabla
    
		<Metric id="Shift">73701</Metric>
		<Metric id="RefundOldTrans">632704</Metric>
		<Metric id="Database">12967</Metric>
		<Metric id="Global">2299194</Metric>
		<Metric id="Global">13752614</Metric>
	</MetricsSuper>
	<MetricsSuper>blablabla22222
    
		<Metric id="Shift" type="timer">73701</Metric>
		<Metric id="RefundOldTrans">632704</Metric>
		<Metric id="Database">12967</Metric>
		<Metric id="Global.CurrentUser">2299194</Metric>
		<Metric id="Global.CurrentUser_FetchIdentityFromDatabase">13752614</Metric>
	</MetricsSuper>
</Content>'

select @xml.query('Content/MetricsSuper')
...
Рейтинг: 0 / 0
22.07.2019, 19:13
    #39840147
NewIvanovec
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xml, текст у элементов найти
SELECT @xml.query('Content/Metrics/text()')
...
Рейтинг: 0 / 0
23.07.2019, 11:31
    #39840383
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xml, текст у элементов найти
NewIvanovec,

должно быть так:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
declare @xml xml = '<Content>
	<MetricsSuper aaa="blablabla">
    
		<Metric id="Shift">73701</Metric>
		<Metric id="RefundOldTrans">632704</Metric>
		<Metric id="Database">12967</Metric>
		<Metric id="Global">2299194</Metric>
		<Metric id="Global">13752614</Metric>
	</MetricsSuper>
	<MetricsSuper aaa="blablabla22222">
    
		<Metric id="Shift" type="timer">73701</Metric>
		<Metric id="RefundOldTrans">632704</Metric>
		<Metric id="Database">12967</Metric>
		<Metric id="Global.CurrentUser">2299194</Metric>
		<Metric id="Global.CurrentUser_FetchIdentityFromDatabase">13752614</Metric>
	</MetricsSuper>
</Content>'

select x.t.value('@aaa', 'varchar(1000)') q1
from @xml.nodes('/Content/MetricsSuper') x(t)



Вам же надо извлечь элементы MetricsSuper и разобрать как строку.
...
Рейтинг: 0 / 0
23.07.2019, 12:00
    #39840409
Minamoto
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xml, текст у элементов найти
Владислав КолосовNewIvanovec,

должно быть так:

Кому должно? :)

NewIvanovec,
Код: sql
1.
2.
select x.t.value('text()[1]', 'varchar(1000)') q1
    from @xml.nodes('Content/MetricsSuper') x(t)
...
Рейтинг: 0 / 0
23.07.2019, 12:09
    #39840415
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xml, текст у элементов найти
Владислав Колосовдолжно быть так:Хм, разве XML от автора противоречит спецификациям XML Org?

Не говоря о том, что ноды Metric тоже содержат текст, они по такой логике тоже "должны" быть переделаны в атрибуты.
...
Рейтинг: 0 / 0
23.07.2019, 13:39
    #39840471
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xml, текст у элементов найти
alexeyvg,

нет, не противоречат. Metric как раз "правильные", как атрибут-элементный вариант.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / xml, текст у элементов найти / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]