資料庫編程--translate的使用,--translate

來源:互聯網
上載者:User

資料庫編程--translate的使用,--translate



1.translate文法
translate(string,from_str,to_str)
2.解釋:    將string字串中的存在的字串from_str的每個字元從左至右替換成字串to_str的對應的每個字元,如果沒有對應上的則在string中會被替換為空白。    區分大小寫;    to_str不可為空;
    例子1:        select translate('項目組24355translate','234','@#$') from dual;        ------------------------------        項目組@$#55translate        **此時相當於@替換了2,#替換了3,$替換了4
    如果from_str的長度大於to_str的長度,則沒有對應上的在string中會被替換為空白  例子2:        select translate('項目組24355translate','234項目組','@#$') from dual;        ------------------------------         @$#55translate        **“項目組”三個字由於沒有對應則在string中被刪除了,或者說被替換成空了。    如果to_str的長度大於from_str的長度則沒有任何影響,不會出現任何異常
    例子3:        select translate('項目組24355translate','234','@#$sdfsdfsdf') from dual;        ------------------------------        項目組@$#55translate        **結果沒有影響
相關應用:    1.判斷某一個字串是否全部是數字        有時候在處理某個欄位的時候,本質要求填寫數字,由於曆史資料填寫的不夠規範,導致許多帶有中文或者英文的不合格的垃圾資料,怎麼判斷是否是數字呢?        使用replace+translate                begin             if replace(translate('項目組要求321789a8', '0123456789', '@'), '@', '') is null then                dbms_output.put_line('這個是數字');              else                dbms_output.put_line('這個不是數字');              end if;        end;
        結果:這個不是數字
                 
    


1.translate文法
translate(string,from_str,to_str)
2.解釋:    將string字串中的存在的字串from_str的每個字元從左至右替換成字串to_str的對應的每個字元,如果沒有對應上的則在string中會被替換為空白。    區分大小寫;    to_str不可為空;
    例子1:        select translate('項目組24355translate','234','@#$') from dual;        ------------------------------        項目組@$#55translate        **此時相當於@替換了2,#替換了3,$替換了4
    如果from_str的長度大於to_str的長度,則沒有對應上的在string中會被替換為空白  例子2:        select translate('項目組24355translate','234項目組','@#$') from dual;        ------------------------------         @$#55translate        **“項目組”三個字由於沒有對應則在string中被刪除了,或者說被替換成空了。    如果to_str的長度大於from_str的長度則沒有任何影響,不會出現任何異常
    例子3:        select translate('項目組24355translate','234','@#$sdfsdfsdf') from dual;        ------------------------------        項目組@$#55translate        **結果沒有影響
相關應用:    1.判斷某一個字串是否全部是數字        有時候在處理某個欄位的時候,本質要求填寫數字,由於曆史資料填寫的不夠規範,導致許多帶有中文或者英文的不合格的垃圾資料,怎麼判斷是否是數字呢?        使用replace+translate                begin             if replace(translate('項目組要求321789a8', '0123456789', '@'), '@', '') is null then                dbms_output.put_line('這個是數字');              else                dbms_output.put_line('這個不是數字');              end if;        end;
        結果:這個不是數字
                 
    

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.