前言

这些函数基本用法为从前后字符串前后删除一些指定内容,在不同的场景下使用。

TRIM

在删除了开头和结尾空格后返回一个字符串

语法

1
TRIM ([[LEADING | TRAILING | BOTH] <trim_char> FROM] <str> )

描述

删除前导和尾部空格后返回字符串 str,删除操作从字符串str的开始(LEADING)、结束(TRAILING)或两边同时(BOTH)执行

  • 如果str或trim_char是空值,则返回空值。
  • 如果没有指定选项,TRIM将从字符串str中删除开头和结尾子字符串trim_char。
  • 如果trim_char未指定,则使用单个空格。

实际案例

从开头删除

1
SELECT TRIM (LEADING 'a' FROM 'aaa123456789aa') "trim leading" FROM DUMMY;

SQL结果

从结尾开始删除

1
SELECT TRIM (TRAILING 'a' FROM 'aaa123456789aa') "trim TRAILING" FROM DUMMY;

SQL结果

从两边开始删除

1
SELECT TRIM (BOTH 'a' FROM 'aaa123456789aa') "trim BOTH" FROM DUMMY

SQL结果

LTRIM

返回一个去掉所有前导空格的字符串

语法

1
LTRIM (<str> [, <remove_set>])

描述

返回字符串str,修剪所有前导空格。如果指定了remove_set, LTRIM将从字符串str的开头移除该集合中包含的所有字符。这个过程一直持续,直到到达一个不是in remove_set的字符。
remove_set被视为一组字符,而不是一个搜索字符串

实际案例

1
SELECT LTRIM ('babababAabend','ab') "ltrim" FROM DUMMY;

SQL结果

RTRIM

返回一个去掉所有尾随空格的字符串

语法

1
RTRIM (<str> [,<remove_set> ])

描述

返回字符串str,修剪所有尾随空格。如果指定了remove_set,则RTRIM将从字符串str的末尾删除该集合中包含的所有字符。这个过程会一直进行,直到到达一个不是in remove_set的字符为止。

remove_set被视为一组字符,而不是一个搜索字符串

实际案例

1
SELECT RTRIM ('endabAabbabab','ab') "rtrim" FROM DUMMY;

SQL结果