表a
levelcode
  1010001
  1010002
  101001002
我现在要把where levelcode like '001%'的记录
换成
  AAAA0001
  AAAA0002
  AAAA001002
也就是把前面为101换成AAAA,这样子的语句该怎么写。

解决方案 »

  1.   

    主要是对Access的函数,不是很熟悉
      

  2.   

    试试这个
    update a set levelcode ='AAAA'+right(levelcode,len(levelcode)-3)
      where left(levelcode,3)='101'
      

  3.   

    update 表a set levelcode=SUBSTRING(levelcode, 4, len(levelcode)-3)
    where levelcode like '001%'
      

  4.   

    应该是这样:
    update 表a set levelcode='AAAA' + SUBSTRING(levelcode, 4, len(levelcode)-3)
    where levelcode like '001%'
      

  5.   

    access 是用 *号 不是用 %号
    此外 
    ACCEss 中的函数是 left ,rigth,子串是instr 长度是len
    在ACCESS的帮助中可能没有说明
    你可以在设计视图中点 默认值 边上有个省略号的按钮从那里可以打开ACCESS中的函数库
    看一下参数说明
      

  6.   

    TempQry.SQL.Text:='Update MSPostionClass Set LevelCode=:Code+SUBSTRING(LevelCode,Len(:Code)+1,len(levelCode))';
      TempQry.Parameters.ParamByName('Code').Value:=LevelCode;
      Showmessage(TempQry.SQL.Text);
      TempQry.ExecSQL;
    总是提示错误,该怎么写才是正确的。