跳到主要内容

RTRIM_IN

描述

RTRIM_IN 函数用于移除字符串右侧的指定字符。当不指定移除字符集合时,默认移除右侧的空格;当指定字符集合时,将移除右侧出现的所有指定字符(不考虑字符集合顺序)。 RTRIM_IN 的特点是会移除指定字符集合中的任意字符组合,而 RTRIM 函数则是按照完整的字符串匹配进行移除。

语法

RTRIM_IN(<str>[, <rhs>])

参数

参数说明
<str>需要处理的字符串。类型:VARCHAR
<rhs>可选参数,要移除的字符集合。类型:VARCHAR

返回值

返回 VARCHAR 类型,表示处理后的字符串。

特殊情况:

  • 如果 str 为 NULL,返回 NULL
  • 如果不指定 rhs,移除右侧所有空格
  • 如果指定 rhs,移除右侧出现在 rhs 中的所有字符,直到遇到第一个不在 rhs 中的字符

示例

  1. 移除右侧空格
SELECT rtrim_in('ab d   ') str;
+------+
| str |
+------+
| ab d |
+------+
  1. 移除指定字符集合
-- RTRIM_IN会移除右端的'a'和'b'中的任意字符
SELECT rtrim_in('ababccaab', 'ab') str;
+---------+
| str |
+---------+
| ababcc |
+---------+
  1. 与 RTRIM 函数的对比
SELECT rtrim_in('ababccaab', 'ab'),rtrim('ababccaab', 'ab');
+-----------------------------+--------------------------+
| rtrim_in('ababccaab', 'ab') | rtrim('ababccaab', 'ab') |
+-----------------------------+--------------------------+
| ababcc | ababcca |
+-----------------------------+--------------------------+