索引号:3|成本会计|
索引号:37|对外经济管理概论|
现在我想将 数字3 和37截取出来怎么做?谢谢。

解决方案 »

  1.   

    --如:
    Select Left('3212|成本会计|',Charindex('|','3212|成本会计|')-1)
      

  2.   

    select substring(索引号,1,charindex('|',索引号))
      

  3.   

    Declare @S Nvarchar(200)
    Select @S = N'索引号:3|成本会计|'
    --Select @S = N'索引号:37|对外经济管理概论|'
    Select Rtrim(Substring(@S, CharIndex(':', @S) + 1, CharIndex('|', @S) - CharIndex(':', @S) - 1))
    --Result
    3
      

  4.   

    declare @str varchar(50)
    set @str = '37|对外经济管理概论|'
    print substring(@str,patindex('%[1-9]%',@str),len(@str)-patindex('%[1-9]%',reverse(@str))+1)
      

  5.   

    查詢Select 
    Rtrim(Substring(ColName, CharIndex(':', ColName) + 1, CharIndex('|', ColName) - CharIndex(':', ColName) - 1)) As ColName 
    From TableName
      

  6.   

    select left(col,charindex(col1,'|')-1) from table
      

  7.   

    --如果“索引号”是字段名的話Declare @S Nvarchar(200)
    Select @S = N'3|成本会计|'
    --Select @S = N'37|对外经济管理概论|'
    Select Rtrim(Substring(@S, 1, CharIndex('|', @S) - 1))
    --Result
    /*
    3
    */--查詢
    Select Rtrim(Substring(索引号, 1, CharIndex('|', 索引号) - 1)) From TableName
      

  8.   

    xierimin(xierimin(承接网站建设业务)) ( ) 信誉:100    Blog  2007-03-05 17:37:55  得分: 0  
     
     
       索引号:3|成本会计|
    索引号:37|对外经济管理概论|
    是两条完整的字符串,不是'3212|成本会计|'
      
     
    -------那我開始寫的就是對的。
    Declare @S Nvarchar(200)
    Select @S = N'索引号:3|成本会计|'
    --Select @S = N'索引号:37|对外经济管理概论|'
    Select Rtrim(Substring(@S, CharIndex(':', @S) + 1, CharIndex('|', @S) - CharIndex(':', @S) - 1))
    --Result
    /*
    3
    */--查詢Select 
    Rtrim(Substring(ColName, CharIndex(':', ColName) + 1, CharIndex('|', ColName) - CharIndex(':', ColName) - 1)) As ColName 
    From TableName
      

  9.   

    declare @str varchar(50)
    set @str = '37|对外经济管理概论|'
    print substring(@str,patindex('%[1-9]%',@str),len(@str)-patindex('%[1-9]%',reverse(@str))+1)--不管数字在哪里都一样提取出来