---
title: "字符串函数 - 数据库代理  V4.3.2 | OceanBase 文档中心"
description: 字符串函数 本节介绍字符串函数中各个函数的使用示例。 说明 本文给出的为字符串函数的推荐用法，建议您按照本文中的用法进行使用。 本文示例均是假设数据库中存在表 t1 ，并且 t1 表中 c1 列为分区键。 SUBSTR/SUBSTRING SUBSTR 和 SUBSTRING 函数的作用均是从字符串中提取子串，此处以…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*nSAhQbrBXKwAAAAAAAAAAAAADiGDAQ/original) 数据库代理 V 4.3.2

# 字符串函数

更新时间：2026-04-14 17:41:09

[编辑](https://github.com/oceanbase/oceanbase-proxy-doc/edit/V4.3.2/zh-CN/600.data-routing/700.expression-routing/200.string-expression.md)  

本节介绍字符串函数中各个函数的使用示例。

#### 说明

- 本文给出的为字符串函数的推荐用法，建议您按照本文中的用法进行使用。
 - 本文示例均是假设数据库中存在表 `t1`，并且 `t1` 表中 `c1` 列为分区键。

## SUBSTR/SUBSTRING

SUBSTR 和 SUBSTRING 函数的作用均是从字符串中提取子串，此处以 SUBSTR 为例介绍如何使用，目前支持如下用法：

- substr(str, pos)

     - str：将要被提取子串的原始字符串。
     - pos：开始提取子串的位置索引。
 - substr(str, pos, len)

     - str：将要被提取子串的原始字符串。
     - pos：开始提取子串的位置索引。
     - len：要返回的子串的字符数。

暂不支持 substr(str from pos) 或 substr(str from pos for len) 用法。

SUBSTR 函数的使用示例如下：

- 从表 `t1` 中选取所有 `c1` 列值为字符 `lo` 的行，ODP 可以将该 SQL 请求准确路由

  ```shell
  select * from t1 where c1=substr('hello',4);

  ```
 - 从表 t1 中选取所有 `c1` 列值为 `hel` 的行，ODP 可以将该 SQL 请求准确路由

  ```shell
  select * from t1 where c1=substr('hello',1,3);

  ```

## TO_CHAR

TO_CHAR 函数作用是将 datetime 类型数据转为 char 类型，目前仅支持 `to_char (datetime, [fmt])` 用法，并且第一个参数需为 date 或 timestamp 类型，

查询 `t1` 表中所有 `c1` 列值与当前日期（以 'YYYY/MM/DD' 格式显示）相等的行，ODP 可以将该 SQL 请求准确路由。示例如下：

```shell
select * from t1 where c1=to_char(sysdate,'YYYY/MM/DD');

```

## LOWER/LCASE

LOWER 和 LCASE 函数的作用均是将字符转为小写格式，此处以 LOWER 为例介绍如何使用函数，目前支持 lower(str) 用法。

从表 `t1` 中选取所有 `c1` 列值为 `aaaa` 的行，ODP 可以将该 SQL 请求准确路由。示例如下：

```shell
select * from t1 where c1=lower('aAAA');

```

## UPPER/UCASE

UPPER 和 UCASE 函数的作用均是将字符转为大写格式，此处以 UPPER 为例介绍如何使用函数，目前支持 upper(str) 用法。

从表 `t1` 中选取所有 `c1` 列值为 `ASSDS` 的行，ODP 可以将该 SQL 请求准确路由。示例如下：

```shell
select * from t1 where c1=upper('ASsds');

```

## TRIM

TRIM 函数的作用是移除字符串两侧（或指定一侧）的指定字符，默认情况下是去除空格。目前支持如下用法：

- trim ([BOTH| LEADING | TRAILING] remove_str FROM str)

     - BOTH：可选项，表示移除字符串两侧的指定字符。
     - LEADING：可选项，表示仅移除字符串左侧的指定字符。
     - TRAILING：可选项，表示仅移除字符串右侧的指定字符。
     - remove_str：想要从原始字符串 `str` 中移除的指定字符，Oracle 模式下该选项的大小为一个字符。
     - str：将要被移除 `remove_str` 字符的原始字符串。
 - trim(remove_str from str)

     - remove_str：想要从原始字符串 `str` 中移除的指定字符，Oracle 模式下该选项的大小为一个字符。
     - str：将要被移除 `remove_str` 字符的原始字符串
 - trim(str)

从表 `t1` 中选取所有 `c1` 列值为 `#你好_#_#` 的行，ODP 可以将该 SQL 请求准确路由。示例如下：

```shell
select * from t1 where c1=trim('_' from '_#你好_#_#');

```

## LTRIM

LTRIM 函数的作用是移除字符串左侧的指定字符，默认情况下是去除空格。根据租户的模式不同分为如下两种用法：

- MySQL 模式：ltrim(str)
 - Oracle 模式：ltrim(str,[set])

     - str：待移除指定字符的字符串。
     - set：可选项，用于设置待移除的指定字符。

查询 `t1` 表中 `c1` 列值与 `ltrim(' 123')`，也就是字符串 `123` 相等的行，ODP 可以将该 SQL 请求准确路由。示例如下：

```shell
select * from t1 where c1= ltrim('   123');

```

## RTRIM

RTRIM 函数的作用是移除字符串右侧的指定字符，默认情况下是去除空格。根据租户的模式不同分为如下两种用法：

- MySQL 模式：rtrim(str)
 - Oracle 模式：rtrim(str,[set])

     - `str`：待移除指定字符的字符串。
     - `set`：可选项，用于设置待移除的指定字符。

查询 `t1` 表中 `c1` 列值与 `rtrim('你好a_***#__','_*#')`，也就是字符串 `你好a` 相等的行，ODP 可以将该 SQL 请求准确路由。示例如下：

```shell
select * from t1 where c1= rtrim('你好a_***#__','_*#');

```

## CONCAT

CONCAT 函数的作用是将一个或多个字符串连接成一个新的单一字符串，支持 concat(string1, string2, ..., stringN) 用法。

从表 `t1` 中选取所有 `c1` 列值为 `concat('a','b')`，也就是 `ab` 的行，ODP 可以将该 SQL 请求准确路由。示例如下：

```shell
select * from t1 where c1 = concat('a','b');

```

## REPLACE

REPLACE 函数的作用是将字符串中的某个子串替换为另一个子串，支持 replace(str, from_str,to_str) 用法：

- str：待操作的字符串，将在这个字符串中进行查找和替换操作。
 - from_str：字符串中待替换的子串，如果这个子串出现在 `str` 中，则会被 `to_str` 替换。
 - to_str：用来替换 `from_str` 的新子串。

从表 `t1` 中选取所有 `c1` 列值为 `heLLo` 的行，ODP 可以将该 SQL 请求准确路由。示例如下：

```shell
select * from t1 where c1=replace('hello','l','L');

```

## LENGTH

LENGTH 函数的作用是计算字符串的长度，支持 length(str) 用法。

查询 `t1` 表中 `c1` 列值与 `length('hello')`，也就是 `5` 相等的行，示例如下：

```shell
select * from t1 where c1=length('hello');

```

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
