Oracle TRIM() 函数使用指南
Oracle TRIM() 是一个内置函数,它返回一个删除了任何指定的前导和尾随字符(默认为空格)的字符串。
如果您需要从字符串的左侧删除字符,请使用 LTRIM();如果您需要从字符串的右侧删除字符,请使用 RTRIM()。
Oracle TRIM() 语法
这里是 Oracle TRIM() 函数的语法:
TRIM(str)
TRIM(trim_character FROM str)
TRIM({BOTH | LEADING | TRAILING} trim_character FROM str)
这里:
BOTH代表同时删除前导和尾随的字符LEADING代表只删除前导字符TRAILING代表只删除尾随的字符- 如果不指定
{BOTH | LEADING | TRAILING},则默认值为BOTH。
参数
str-
必需的。需要处理的字符串。它可以是
CHAR,VARCHAR2,NCHAR,NVARCHAR2,CLOB, 或NCLOB类型的值。 trim_character-
可选的。需要删除的前缀和后缀字符。您只能指定一个字符。如果不指定这个
trim_character,则默认值为一个空格。
返回值
Oracle TRIM() 函数返回一个删除了任何指定的前导和尾随字符(默认为空格)的字符串。
如果任意一个参数为 NULL, TRIM() 将返回 NULL。
Oracle TRIM() 示例
这里有几个展示了 Oracle TRIM() 函数用法的示例。
删除空白
这个语句展示了如何使用 Oracle TRIM() 函数删除 ' Hello ' 两侧的空白:
SELECT
' Hello ' Origin,
TRIM(' Hello ') Result
FROM dual;
输出:
ORIGIN RESULT
______________ _________
Hello Hello删除指定字符
这个语句展示了如何使用 Oracle TRIM() 函数删除 '___***#Hello' 两侧的 _*# 字符:
SELECT
'___Hello___' Origin,
TRIM('_' FROM '___Hello___') Result
TRIM('_' FROM '___Hello___') Result
FROM dual;
输出:
ORIGIN RESULT
______________ _________
___Hello___ HelloBOTH vs LEADING vs TRAILING
这个语句展示了 BOTH, LEADING 和 TRAILING 的工作方式:
SELECT
'___Hello___' Origin,
TRIM(BOTH '_' FROM '___Hello___') BOTH,
TRIM(LEADING '_' FROM '___Hello___') LEADING,
TRIM(TRAILING '_' FROM '___Hello___') TRAILING
FROM dual;
输出:
ORIGIN BOTH LEADING TRAILING
______________ ________ ___________ ___________
___Hello___ Hello Hello___ ___HelloNULL 参数
如果任意一个参数为 NULL, TRIM() 将返回 NULL。
SET NULL 'NULL';
SELECT
TRIM(NULL) Result1,
TRIM(NULL FROM 'ABC') Result2,
TRIM('ABC' FROM NULL) Result3
FROM dual;
输出:
RESULT1 RESULT2 RESULT3
__________ __________ __________
NULL NULL NULL在本示例中,我们使用 SET NULL 'NULL'; 语句将 NULL 值显示为 'NULL' 字符串。
结论
Oracle TRIM() 是一个内置函数,它返回一个删除了任何指定的前导和尾随字符(默认为空格)的字符串。