代码之家  ›  专栏  ›  技术社区  ›  KuldipMCA

我们如何知道SQL Server 2005中有多少列来自XML变量

  •  1
  • KuldipMCA  · 技术社区  · 15 年前

    我正在将XML类型变量从一个过程传递到另一个过程。

    像这样设置XML变量

    Declare @XMLDOC XML
    
    set @XMLDOC = (select 60 as RecordDetailID,            
                          '' as ItemText,            
                          '' as ItemNote,            
                          0 as DisplayOrder                        
                   FOR XML RAW) 
    

    在某些情况下,我需要将另一个“状态”列发送到下面的另一个过程

      set @XMLDOC = (select  60 as RecordDetailID,            
                             '' as ItemText,            
                             '' as ItemNote,            
                             0 as DisplayOrder,
                             1 as Status  
                     FOR XML RAW) 
    

    如何知道有多少列已发送到XML类型变量?

    1 回复  |  直到 15 年前
        1
  •  2
  •   Frédéric Hamidi    15 年前

    你可以使用 nodes() 计算XML属性的方法:

    select count(1) from @XMLDOC.nodes('row/@*') as T(c);