ASCII(c) | 返回首字符 ASCII 碼 | ASCII('A')=65 | 逆函數 CHR(n) |
CHR(n) | 十進制轉字符 | CHR(65)='A' | 支援 NCHAR |
CONCAT(s1,s2) | 拼接字符串 | CONCAT('a','b')='ab' | 等同 s1||s2,自動處理 NULL |
INITCAP(s) | 單詞首字母大寫 | INITCAP('hello world')='Hello World' | 分隔符:空格/標點/控制字符 |
INSTR(s1,s2[,pos[,occ]]) | 查找子串位置 | INSTR('mississippi','i',3,3)=11 | pos 負數從右向左搜,位置仍從左計 |
INSTRB | 按字節查找 | 多字節字符集下與 INSTR 差異 | 單字節集等同 INSTR |
LENGTH(s) | 字符長度 | LENGTH('ipso facto')=10 | NULL 返回 NULL |
LENGTHB | 字節長度 | 多字節集下實際存儲字節數 | |
LOWER/UPPER | 大小寫轉換 | WHERE UPPER(name) LIKE 'KI%' | 常用於 WHERE 條件規範化 |
LPAD(s, n[,pad]) | 左填充到長度 n | LPAD('yes',7,'*')='****yes' | pad 默認空格;n<原長則截斷 |
RPAD(s, n[,pad]) | 右填充 | RPAD('no',5,'-')='no---' | 同 LPAD |
LTRIM(s[,set]) | 去除左側指定字符集 | LTRIM('mississippi','mis')='ppi' | 非單字符,而是字符集合 |
RTRIM(s[,set]) | 去除右側指定字符集 | RTRIM('abcxyz','xyz')='abc' | 同 LTRIM |
REPLACE(s, old[,new]) | 替換子串 | REPLACE('uptown','up','down')='downtown' | new 省略則刪除 old |
SUBSTR(s, pos[,len]) | 截取子串 | SUBSTR('message',1,4)='mess' | pos 負數從末尾倒數 |
SUBSTRB | 按字節截取 | 多字節集下精確截取 | |
SOUNDEX(s) | 發音相似編碼 | SOUNDEX('Dawes')='D200' | 模糊匹配姓名/地址 |
TRANSLATE(s, from, to) | 字符級映射替換 | TRANSLATE('fumble','uf','ar')='ramble' | 一對一映射,非子串替換 |
TRIM([BOTH|LEADING|TRAILING] c FROM s) | 修剪首尾字符 | TRIM(' hello ')='hello' | 默認修剪空格,可指定字符 |