oracle 截取字符(substr),檢索字符位置(instr) case when then else end語句使用

常用函數:substr和instr

 1.SUBSTR(string,start_position,[length])    求子字符串,返回字符串

解釋:string 元字符串

       start_position   開始位置(從0開始)

       length 可選項,子字符串的個數

For example:

substr("ABCDEFG", 0); //返回:ABCDEFG,截取所有字符
substr("ABCDEFG", 2); //返回:CDEFG,截取從C開始之後所有字符
substr("ABCDEFG", 0, 3); //返回:ABC,截取從A開始3個字符
substr("ABCDEFG", 0, 100); //返回:ABCDEFG,100雖然超出預處理的字符串最長度,但不會影響返回結果,系統按預處理字符串最大數量返回。
substr("ABCDEFG", 0, -3); //返回:EFG,注意參數-3,爲負值時表示從尾部開始算起,字符串排列位置不變。

 

  2.INSTR(string,subString,position,ocurrence)查找字符串位置

解釋:string:源字符串

      subString:要查找的子字符串

      position:查找的開始位置

      ocurrence:源字符串中第幾次出現的子字符串

For example:

INSTR('CORPORATE FLOOR','OR', 3, 2)中,源字符串爲'CORPORATE FLOOR', 目標字符串爲'OR',起始位置爲3,取第2個匹配項的位置;返回結果爲 14 '

3.SQL 查詢中的case when then else end的使用

SELECT
       CASE R.REQ_STATUS   
         WHEN 'New' THEN
          '新增'
         WHEN 'Callbacking' THEN
          '回覆'
         ELSE
          '測試'  
       END AS TEST
  FROM TB_SUPPORT_REQ R

相當於java中的

if(){

   ...

}else if(){

   ...

}else{

   ...

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章