表TEST  有两列  分别为 name,omr其中OMR为ABCDBADDDDDDADDDDADBCADCDADCD
         ABCDBADDDDDDADDDDADBCADCDADCD
         ABCDBADDDDDDADDDDADBCADCDADCDCDADA
         ABCDBADDDDDDADDDDADBCADCDADCDADCADDFA请问,有什么办法可以在所有OMR字母后面加上';'

解决方案 »

  1.   

    update test set omr=omr||';'
      

  2.   

    要改成这样 A;B;C;D;C;C;A;…………
      

  3.   

    UPDATE TEST SET OMR=REPLACE(OMR,'A','A;');
    UPDATE TEST SET OMR=REPLACE(OMR,'B','B;');
    ...
    UPDATE TEST SET OMR=REPLACE(OMR,'Z','Z;');
      

  4.   

    boydgmx(授人以鱼不如授人以渔(baidu&google))   同志是对的  我开始想复杂了,replace替换就OK了
      

  5.   

    还有没有其他方法啊 ,假如我OMR里面不止有字母呢 ,没一个字段用;分隔开
      

  6.   

    CREATE OR REPLACE FUNCTION ADD_SEMICOLON (theStr IN VARCHAR2) RETURN VARCHAR2
    AS
    rtVal VARCHAR2(4000):=NULL;
    BEGIN
    FOR i IN 1..LENGTH(theStr) LOOP
    rtVal:=rtVal || SUBSTR(theStr,i,1) || ';';
    END LOOP;
    RETURN rtVal;
    EXCEPTION WHEN OTHERS THEN RETURN NULL;
    END;
    /
    SQL> SELECT ADD_SEMICOLON ('ASDF') FROM DUAL;ADD_SEMICOLON('ASDF')
    --------------------------------------------------
    A;S;D;F;SQL> SELECT ADD_SEMICOLON ('ASDF1234') FROM DUAL;ADD_SEMICOLON('ASDF1234')
    --------------------------------------------------
    A;S;D;F;1;2;3;4;
      

  7.   

    然后 update test set omr=ADD_SEMICOLON(omr);