powered by simpleCommunicator - 2.0.30     © 2024 Programmizd 02
Map
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / xpath sum and delete duplicates
1 сообщений из 1, страница 1 из 1
xpath sum and delete duplicates
    #39770537
Фотография Focha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как с помощью xpath убрать дубликаты и сложить строки в разных столбцах?
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
declare @xml xml
set @xml  = 
'<Root>
	<rows country = "ru" warehouse = "store1"  group_suplly = "АПСК"> <stock>1</stock> </rows>
	<rows country = "ru" warehouse = "store1"  group_suplly = "АПСК"> <stock>2</stock> </rows>
	<rows country = "ru" warehouse = "store2"  group_suplly = "АПСК"> <stock>1</stock> </rows>	
	<rows country = "ru" warehouse = "store2"  group_suplly = "АПСК"> <stock>3</stock> </rows>	
	<rows country = "ru" warehouse = "store3"  group_suplly = "АПСК"> <stock>1</stock> </rows>	
	<rows country = "ru" warehouse = "store3"  group_suplly = "АПСК"> <stock>5</stock> </rows>	

</Root>'

select 
		 Node.Data.value('distinct-values(@warehouse)', 'varchar(10)')
		,Node.Data.value('sum(//rows[@warehouse = "store1"]/stock)', 'float')
		,Node.Data.value('sum(//rows[@warehouse = "store2"]/stock)', 'float')
		,Node.Data.value('sum(//rows[@warehouse = "store3"]/stock)', 'float')
from @xml.nodes('//Root/rows') Node(Data)



Хочу получить:
(No column name) (No column name) (No column name) (No column name)store1 3 store2 4 store3 6
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / xpath sum and delete duplicates
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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