XML字段内容如下:
declare @xx xml
set @xx =
XML code<a>
 <b>111111111111</b>
 <page indexPage='1'></page>  -- 表示上面的内容为第一页
 <c>22222222
   333333333
  34444444
   55555555
   <page indexPage='2'></page> -- 表示到上面<page indexPage='1'></page>之间的内容为第二页
   7777777777
 </c>
</a>
select @xx.query('????')
 请问大家在sql_server中取出某一页的内容???
谢谢!!!

解决方案 »

  1.   


    --楼主要获取page节点里的内容???
    --不知道这个例子对不!declare @xx xml
    set @xx ='<a>
    <page indexPage=''1''>
    <ID id = ''1''>1</ID>
    <name>aaa</name>
    </page>
    <page indexPage=''2''>
    <ID id = ''2''>2</ID>
    <name>bbb</name>
    </page>
    </a>'
    SELECT X.Col.value('ID[1]','varchar(20)') id,
        X.col.value('name[1]','varchar(20)') [name]
    FROM @xx.nodes('//a/page') X(Col)  
    /*id                   name
    -------------------- --------------------
    1                    aaa
    2                    bbb(2 行受影响)
      

  2.   

    SQL Server 2005 XML 操作总结(五)元素(节点)操作——修改、删除、移动、遍历操作
      

  3.   

    如果
    第一页在<page indexPage='1'></page>里面
    第二页在<page indexPage='2'></page>里面
    就直观多了。