Даны ХМЛ данные @xml:
<?xml version="1.0" encoding="utf-8"?>
<Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2005/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">
<DataSets>
<DataSet >
<Query>
<CommandText>Select myField1 From myTable1</CommandText>
</Query>
</DataSet>
<DataSet >
<Query>
<CommandText>Select myField2 From myTable2</CommandText>
</Query>
</DataSet>
</DataSets>
Необходимо получить значения узлов <CommandText> но не все в одном столбце,
а каждое в отдельном столбце, в одну строку, вот так:
Select myField1 From myTable1 | Select myField2 From myTable2
Все же в одном столбце селектируется так:
EXEC sp_xml_preparedocument @idoc OUT, @xml, '<root xmlns:default="http://schemas.microsoft.com/sqlserver/reporting/2005/01/reportdefinition"/>'
print CAST(@idoc as varchar(10))
SELECT * FROM
OPENXML(@idoc,'//default:Query',2) -- choise Query as default and give a second node
WITH ([default:CommandText] VARCHAR(50))
EXEC sp_xml_removedocument @idoc
Результат:
Select myField1 From myTable1
Select myField2 From myTable2
как получить значения в одну строку в два столбца ?
Спасибо