如题

解决方案 »

  1.   

    declare @s varchar(80)
    set @s='1.2.3.4.5.6'
    select len(@s)-1/*
                
    ----------- 
    10(所影响的行数为 1 行)*/
      

  2.   

    declare @s varchar(100)
    set @s='1.2.3.4.5.6'
    select len(@s)-charindex('.',REVERSE(@s))+1
      

  3.   

    select instr('1.2.3.4.5.6','.',-1) from dual 
      

  4.   

    declare @s varchar(100)
    set @s='1.2.3.4.5.6788.2873912793'
    select len(@s)-charindex('.',REVERSE(@s))+1
    /*
    15
    */
      

  5.   


    declare @s varchar(80)
    set @s='1.2.3.4.5.26'select len(@s)-charindex('.',REVERSE(@s))+1/*
                
    ----------- 
    10(所影响的行数为 1 行)*/
      

  6.   

    declare @s varchar(1000)
    select len(@s)-charindex('.',REVERSE(@s))+1
    先反序字符串,取得第一个‘.’的位置,然后用字符串总长度减去值后再加1。
      

  7.   

    declare @s varchar(100)
    set @s='1.2.3.4.5.6'
    select len(@s)-charindex('.',REVERSE(@s))+1
      

  8.   

    declare @s varchar(100)
    set @s='1.2.3.4.5.6'
    select LEN(@s)-charindex('.',REVERSE(@s))+1