Здравствуйте, уважаемые форумчане!
Хотел бы попросить вашего мудрого совета АКА помощи в решении задачи. Собственно сама задача:
Дана таблица([LEADER].[dbo].[OVERTIMES] ) с двумя столбцами ID (uniqueidentifier) и OvertimeXML(XML). Мне нужно пробежать по таблице, вытащить из OvertimeXML(XML) нужные мне значения по заданным мною условиям и записать это все во временную таблицу.
Из XML вытаскиваю значения следующим образом:
Но как мне привинтить к результату значение ячейки ID (uniqueidentifier) ума не приложу.
Дорогие специалисты, будьте так любезны подскажите как быть.
Хотел бы попросить вашего мудрого совета АКА помощи в решении задачи. Собственно сама задача:
Дана таблица([LEADER].[dbo].[OVERTIMES] ) с двумя столбцами ID (uniqueidentifier) и OvertimeXML(XML). Мне нужно пробежать по таблице, вытащить из OvertimeXML(XML) нужные мне значения по заданным мною условиям и записать это все во временную таблицу.
Из XML вытаскиваю значения следующим образом:
DECLARE name_cursor CURSOR FOR Select OverTimeXml From [LEADER].[dbo].[OVERTIMES] --исходная таблица OPEN name_cursor DECLARE @xmlVal XML declare @MyTempTable1 table(AActDuration nvarchar(200) , Namee nvarchar(400),OOperation nvarchar(200)) DECLARE @idoc int FETCH NEXT FROM name_cursor INTO @xmlVal WHILE (@@FETCH_STATUS = 0) BEGIN EXEC sp_xml_preparedocument @idoc OUTPUT, @xmlVal Insert into @MyTempTable1 (AActDuration,Namee,OOperation ) ( SELECT ActDuration,Name,Operation FROM OPENXML (@idoc, '/Tasks/Task',1) WITH (ActDuration varchar(100) ,Name varchar(100),Operation varchar (400)) where Name like '%523%' or Operation like '%523%') --условия EXEC sp_xml_removedocument @idoc FETCH NEXT FROM name_cursor INTO @xmlVal END CLOSE name_cursor DEALLOCATE name_cursor select * from @MyTempTable1
Но как мне привинтить к результату значение ячейки ID (uniqueidentifier) ума не приложу.
Дорогие специалисты, будьте так любезны подскажите как быть.