powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / XML -> таблица
8 сообщений из 8, страница 1 из 1
XML -> таблица
    #34697253
Guest2222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как преобразовать XML в таблицу. У меня получается список, а не таблица (из-за того, что теги <td> имеют одинаковые имена). Т.е. нужно развернуть список.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
DECLARE @idoc int
DECLARE @doc nvarchar(max)
SET @doc ='
<rows>
<tr>
  <td><a>20.07.2007</a></td> <-- Колонка 1
  <td><a>8:07:15</a></td> <-- Колонка 2
  <td><a></a></td> <-- Колонка 3
  <td><a>0:01</a></td> <-- Колонка 4
  <td><a>0.0000</a></td> <-- Колонка 5
</tr>
<tr>
  <td><a>20.07.2007</a></td>
  <td><a>8:07:42</a></td>
  <td><a>internet.mts.ru</a></td>
  <td><a></a></td>
  <td><a>4</a></td>
  <td><a> 0.0141</a></td>
</tr>
</rows>'

--Create an internal representation of the XML document.
EXEC sp_xml_preparedocument @idoc OUTPUT, @doc

-- Execute a SELECT statement that uses the OPENXML rowset provider.
SELECT *
FROM OPENXML (@idoc, '/rows/tr', 2 )
WITH(
	artist nvarchar(max) '.',
	song nvarchar(max) './td
)
...
Рейтинг: 0 / 0
XML -> таблица
    #34697308
SuSa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Это ты на чем пишешь?
2. От нас то ты чего хочешь?
...
Рейтинг: 0 / 0
XML -> таблица
    #34697327
Guest2222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На MS SQL Server 2005.
Здесь же используется XPath. Нужно извлечь узлы из XML и развернуть их в таблицу
...
Рейтинг: 0 / 0
XML -> таблица
    #34697496
qu-qu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Guest2222На MS SQL Server 2005.
Здесь же используется XPath. Нужно извлечь узлы из XML и развернуть их в таблицу

Типа, так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
...
SELECT *
FROM OPENXML (@idoc, '/rows/tr', 2 )
WITH(
	artist nvarchar(max) '.',
	song1 nvarchar(max) 'td[1]',
	song2 nvarchar(max) 'td[2]',
	song3 nvarchar(max) 'td[position()=3]' /* или так */
)
То, что у вас имена и типы полей ("artist", "song") не совпадают со структурой приведенного примера HTML-таблицы - оставляю на вашей "совести"...
А вообще - XPath он и "в Африке" XPath, хоть в T-SQL его используют, хоть в XSLT, нужно вам выделить в отдельный столбец отдельный тег <td> из ряда таких же тегов - специфицируйте его по позиции (других способов пока не придумано).
...
Рейтинг: 0 / 0
XML -> таблица
    #34697584
Guest2222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Большое спасибо
...
Рейтинг: 0 / 0
XML -> таблица
    #34701390
Guest2222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А можно ли используя XPath выполнять группировки с подстчётом сумм. Как в SQL GROUP BY и SUM и COUNT?
...
Рейтинг: 0 / 0
XML -> таблица
    #34701724
belugin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XML.com: Grouping With XSLT 2.0

Насколько я понял, с помошью MSXML нельзя
...
Рейтинг: 0 / 0
XML -> таблица
    #34703249
TiG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Guest2222А можно ли используя XPath выполнять группировки с подстчётом сумм. Как в SQL GROUP BY и SUM и COUNT?
belugin XML.com: Grouping With XSLT 2.0

Насколько я понял, с помошью MSXML нельзя
STFF
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / XML -> таблица
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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