首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 教學

Oracle 字符函數實戰速查:大小寫、替換、截取、填充、編碼轉換全覆蓋

     編輯:Oracle 教學

Oracle 字符函數實戰速查:大小寫、替換、截取、填充、編碼轉換全覆蓋

大小寫轉換

UPPER('liunan')   -- LIUNAN
LOWER('LIUNAN')   -- liunan
INITCAP('liu nan') -- Liu Nan (首字母大寫)

字符替換與轉換

函數說明範例
REPLACE(str, old, new)全域替換REPLACE('ABC','A','_') → _BC
TRANSLATE(str, from, to)字元級一對一映射TRANSLATE('ABC','ABC','123') → 123

長度與截取 (SUBSTR)

LENGTH(ename) = 5                    -- 長度過濾
SUBSTR(ename, 1, 3) = 'JAM'          -- 前 3 字元 (索引從 1 開始)
SUBSTR(ename, 4)                     -- 第 4 字元到結尾
SUBSTR(ename, -3)                    -- 後 3 字元 (負索引從尾部)
SUBSTR(ename, LENGTH(ename)-2)       -- 等同後 3 字元

去除空格與指定字元

LTRIM('  abc ')   -- 移除左側空格
RTRIM('  abc ')   -- 移除右側空格
TRIM('  abc ')    -- 移除兩側空格
LTRIM('xyzadams','xyz')  -- 移除左側 xyz
RTRIM('xyzadams','ams')  -- 移除右側 ams

填充函數

LPAD('liunan',10,'*')   -- ****liunan (左填充至 10 字元)
RPAD('liunan',10,'*')   -- liunan**** (右填充)
RPAD(LPAD('liunan',10,'*'),14,'*') -- ****liunan**** (雙側)

ASCII 編碼互轉

ASCII('A')   -- 65
ASCII('a')   -- 97
CHR(65)      -- 'A'
CHR(97)      -- 'a'

實戰組合範例

-- 查詢姓名含 'A' 者,並將 A 替換為 _
SELECT ename, REPLACE(ename,'A','_') FROM emp;

-- 查詢姓名長度 >= 6
SELECT * FROM emp WHERE LENGTH(ename) >= 6;
-- 或
SELECT * FROM emp WHERE ename LIKE '______%';
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved