select substring('山东:济南',1,charindex('山东:济南',':'))

解决方案 »

  1.   

    declare @a varchar(100)
    select @a='山东:济南'
    select 分号前字符串=left(@a,charindex(':',@a)-1),分号后字符串=substring(@a,charindex(':',@a)+1,len(@a))
      

  2.   

    create function f_split(@SourceSql varchar(8000),@StrSeprate varchar(10))
    returns @temp table(a varchar(100))
    /*--实现split功能 的函数
    --date    :2005-4-20
    --Author :Domino
    */
    as 
    begin
        declare @i int
        set @SourceSql=rtrim(ltrim(@SourceSql))
        set @i=charindex(@StrSeprate,@SourceSql)
        while @i>=1
        begin
            insert @temp values(left(@SourceSql,@i-1))
            set @SourceSql=substring(@SourceSql,@i+1,len(@SourceSql)-@i)
            set @i=charindex(@StrSeprate,@SourceSql)
        end
        if @SourceSql<>'\'
           insert @temp values(@SourceSql)
        return 
    end
    select top 1 from f_split('山东:济南',':')
      

  3.   

    declare @str varchar(20)
    set @str='山东:济南'
    select left(@str,charindex(':',@str)-1)/*
                         
    -------------------- 
    山东(1 row(s) affected)
    */
      

  4.   


    declare @tab table(name varchar(20))insert @tab values('山东:济南')
    insert @tab values('可以:沁亿')select * from @tabselect substring(name,0,charindex(':',name)) from @tab
      

  5.   

    declare @var varchar(1000)
    set @var = '山东:济南'select left(@var,charindex(':',@var)-1)--输出
    /*
    山东
    */
      

  6.   

    churchatp1(早起的鸟儿有虫吃,早起的虫儿被鸟吃) 取不出来呀!
    CREATE procedure CreateStatArea
    (
    @companyID Int,
    @ipAddress NVarChar(100)
    )
    as
    declare @area nvarchar(30)
    set @area=(select substring(@ipAddress,1,charindex(@ipAddress,':')))
    update StatArea set Number=Number+1 where companyID=@companyID and area=@area取出来是空的。
      

  7.   

    方法:substring
          stuff
          left
          right
          reverse
          charindex
          patindex
    这几个函数均可以实现
      

  8.   

    --也可以使用stuff
    declare @a varchar(100)
    select @a='山东:济南'
    select 分号前=stuff(@a,charindex(':',@a),len(@a),''),分号后=stuff(@a,1,charindex(':',@a),'')
      

  9.   

    --虫子的方法应该这样select substring('山东:济南',1,charindex(':','山东:济南')-1)--------- 
    山东(所影响的行数为 1 行)
      

  10.   

    select substring('山东:济南',1,charindex(':','山东:济南')-1)这样就可以了