Sql server 在SQL server中使用XQuery从XML中获取同名元素
我有以下XMLSql server 在SQL server中使用XQuery从XML中获取同名元素,sql-server,sql-server-2008,tsql,xquery,Sql Server,Sql Server 2008,Tsql,Xquery,我有以下XML DECLARE @ruleXML XML SET @RuleXML = '<questionnaire xmlns:xsi="http://schema1" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schem2" title="Sample"> <sections> <section id="24" title="Section Title" help="" u
DECLARE @ruleXML XML
SET @RuleXML = '<questionnaire xmlns:xsi="http://schema1" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schem2" title="Sample">
<sections>
<section id="24" title="Section Title" help="" url="">
<questions />
</section>
<section id="23" title="Information" help="" url="">
<questions />
</section>
<section id="25" title="Section Title1" help="" url="">
<questions>
<question id="3" title="Question Text">
<display-rules />
<questions />
</question>
<question id="4" title="Question Text" >
<response-set type="inline" />
<display-rules />
<questions />
</question>
</questions>
</section>
</sections>
</questionnaire>'
如何在SQL server中使用XQUERY从所有问题节点(不论其级别)获取具有问题id和标题的表
; with xmlnamespaces (default 'http://schem2')
select tbl.col1.value('@id', 'int')
, tbl.col1.value('@title', 'varchar(100)')
from @RuleXML.nodes('//question') tbl(col1)