Home Forums Programming XML The argument 1 of XML datatype method nodes must be string literal.plz help RE: The argument 1 of XML datatype method nodes must be string literal.plz help

  • Use sql:variable

    set @starttag ='XML'

    set @root ='Provider'

    SELECT

    dense_rank() OVER (ORDER BY C.value('local-name(.)', 'varchar(50)')) AS 'SN',

    NodeName = C.value('local-name(.)', 'varchar(50)')

    , NodeValue = C.value('(.)[1]', 'varchar(50)')

    FROM @xml.nodes('/*[local-name(.)=sql:variable("@starttag")]/*[local-name(.)=sql:variable("@root")]/*') AS T(C)

    ____________________________________________________

    Deja View - The strange feeling that somewhere, sometime you've optimised this query before

    How to get the best help on a forum

    http://www.sqlservercentral.com/articles/Best+Practices/61537