# 字符串函数

# upper

将字符串中的ASCII拉丁字符转换为大写。

别名

ucase

示例

SELECT upper('a')
┌─upper('a')─┐
│ A          │
└────────────┘

# lower

将字符串中的ASCII拉丁字符转换为小写。

别名

lcase

示例

SELECT lower('A')
┌─lower('A')─┐
│ a          │
└────────────┘

# substring(s, offset, length)

返回从索引offset处开始的length个字节的子字符串。字符索引从1开始。

substring(s, offset, length)

别名

  • substr
  • mid

示例

SELECT substring('www.clickhouse.com', 5, 10)
┌─substring('www.clickhouse.com', 5, 10)─┐
│clickhouse                              │
└────────────────────────────────────────┘

# trim()

从字符串的开头或结尾删除指定的字符。如果未指定其他方式,则函数将删除空格(ASCII字符32)。

trim([[LEADING|TRAILING|BOTH] trim_character FROM] input_string)

参数

  • trim_character — 要删除的指定字符。字符串。
  • input_string — 要删除的字符串。字符串。

返回值

  • 没有前导和/或尾随指定字符的字符串。
  • 类型:String

示例

SELECT trim(BOTH ' ()' FROM '( Hello, world! )');
┌─replaceRegexpAll('( Hello, world! )', concat('^[', regexpQuoteMeta(' ()'), ']+|[', regexpQuoteMeta(' ()'), ']+$'), '')─┐
│ Hello, world!                                                                                                          │
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

# Length

返回字符串的字节长度(而不是字符或Unicode代码点的长度)。该函数也适用于数组。

length(s)

参数

  • s — 要获取长度的指定字符。字符串。

别名

OCTET_LENGTH