给你个例子:select CHARINDEX('csdn','acescsdnsd')

解决方案 »

  1.   

    给你个完整的吧 :create table codes(
    [str] varchar(100) not null
    )insert into codes
    select 'acescsdnsd' union all
    select 'ESEESMCSD' union all
    select 'KQCSSSSSM' union all
    select 'ssocsosdesf'declare @v1 varchar(4)
    set @v1 ='CSDN'select CHARINDEX(@v1,[str]),[str] from codes 自己执行看看结果
      

  2.   


    declare @T table([ID] int,[str] varchar(11),cnt int)
    insert @T
    select 1,'acescsdnsd',0 union all
    select 2,'ESEESMCSD',0 union all
    select 3,'KQCSSSSSM',0 union all
    select 4,'ssocsosdesf',0declare @p varchar(10) set @p='csdn'
    declare @i int set @i=len(@p)
    while @i>0
    begin
    update @T set cnt=cnt+sign(charindex(substring(@p,@i,1),[str]))
    set @i=@i-1
    endselect * from @t
    /*
    ID          str         cnt
    ----------- ----------- -----------
    1           acescsdnsd  4
    2           ESEESMCSD   3
    3           KQCSSSSSM   2
    4           ssocsosdesf 3
    */
      

  3.   

    额 诸位大神 这些都SQL里的  我要的是ACCESS ....
      

  4.   

    ACCESS 里木有变量  所以很惆怅
      

  5.   

    declare @T table([ID] int,[str] varchar(11),cnt int)
    insert @T
    select 1,'acescsdnsd',0 union all
    select 2,'ESEESMCSD',0 union all
    select 3,'KQCSSSSSM',0 union all
    select 4,'ssocsosdesf',0declare @p varchar(10) set @p='csdn'
    declare @i int set @i=Len(@p)
    while @i>0
    begin
    update @T set cnt=cnt+Sgn(InStr([str],mid(@p,@i,1)))
    set @i=@i-1
    endselect * from @t
      

  6.   

    declare @T table([ID] int,[str] varchar(11),cnt int)
    insert @T
    select 1,'acescsdnsd',0 union all
    select 2,'ESEESMCSD',0 union all
    select 3,'KQCSSSSSM',0 union all
    select 4,'ssocsosdesf',0declare @p varchar(10) set @p='csdn'
    declare @i int set @i=Len(@p)
    while @i>0
    begin
    update @T set cnt=cnt+Sgn(InStr([str],mid(@p,@i,1)))
    set @i=@i-1
    endselect * from @tdeclare 函数 用不了 
      

  7.   

    我只知道 mssql中的sign对应 access中Sgn
    mssql中的charindex对应 access中InStr
    mssql中的substring对应 access中mid
      

  8.   

    declare @T table([ID] int,[str] varchar(11),cnt int)
    insert @T
    select 1,'acescsdnsd',0 union all
    select 2,'ESEESMCSD',0 union all
    select 3,'KQCSSSSSM',0 union all
    select 4,'ssocsosdesf',0declare @p varchar(10) set @p='csdn'
    declare @i int set @i=Len(@p)
    while @i>0
    begin
    update @T set cnt=cnt+Sgn(InStr([str],mid(@p,@i,1)))
    set @i=@i-1
    endselect * from @tdeclare 函数 用不了 access也不支持临时表变量可以不用,@i 直接用len('csdn')就可以。
      

  9.   

    @i 直接用len('csdn')就可以。 这个是可以 但是算出的数据 怎么办?直接输出?不行啊 我还要取他的最大值呀
      

  10.   

    http://bbs.csdn.net/topics/320011978
    不能定义变量,我是搞不定了。
      

  11.   


    不用access 用sql server就ok了。