楼主写的是SQL语句吗?
SQL里没有xml类型吧2005?

解决方案 »

  1.   

    2000下可搜索表找到<a id="9"></a>在第几行,不知道2005下有简便方法没!
      

  2.   

    declare @x varchar(8000),@s varchar(2)
    declare @bb int,@b int,@e int
    set @x='<ROOT>
    <a id="5"></a>
    <a id="9"></a>
    <a id="6"></a>
    <a id="10"></a>
    </ROOT>'
    select @s='10',@b=0,@e=0,@bb=-1
    if charindex(@s,@x) > 0
    begin
    while charindex(@s,substring(@x,@b,@e))=0
    begin
    set @b=charindex('<',@x,@b+1)
    set @e=charindex('>',@x,@b+1)
    set @bb=@bb+1
    end
    end
    select substring(@x,@b,@e),@bb,@b,@e
      

  3.   

    楼上的兄台可能没有明白我的意思
    我要得到的是position()
      

  4.   

    declare @x varchar(8000),@s varchar(2)
    declare @bb int,@b int,@e int
    set @x='<ROOT>
    <a id="5"></a>
    <a id="9"></a>
    <a id="6"></a>
    <a id="10"></a>
    </ROOT>'
    select @s='9',@b=0,@e=0,@bb=0
    if charindex(@s,@x) > 0
    begin
    while charindex(@s,substring(@x,@b,@e-@b+1))=0
    begin
    set @b=charindex('<',@x,@b+1)
    set @e=charindex('>',@x,@e+1)
    set @bb=@bb+1
    end
    end
    set @bb=@bb/2
    select @bb
    ----------- 
    2(所影响的行数为 1 行)
    这个2不是你要的吗
      

  5.   

    我是想用XQuery中position()函数的值传给变量@bb,如果只求位置小弟我还是能折腾出来的!不管怎么样谢谢!!