字符串函数

编辑

用于执行字符串操作的函数。

ASCII

编辑

概要

ASCII(string_exp) 

输入:

字符串表达式。如果为 null,则函数返回 null

输出: 整数

描述: 将 string_exp 最左侧字符的 ASCII 码值作为整数返回。

SELECT ASCII('Elastic');

ASCII('Elastic')
----------------
69

BIT_LENGTH

编辑

概要

BIT_LENGTH(string_exp) 

输入:

字符串表达式。如果为 null,则函数返回 null

输出: 整数

描述: 返回输入表达式 string_exp 的比特长度。

SELECT BIT_LENGTH('Elastic');

BIT_LENGTH('Elastic')
---------------------
56

CHAR

编辑

概要

CHAR(code) 

输入:

介于 0255 之间的整数表达式。如果为 null、负数或大于 255,则函数返回 null

输出: 字符串

描述: 返回具有数值输入指定的 ASCII 码值的字符。

SELECT CHAR(69);

   CHAR(69)
---------------
E

CHAR_LENGTH

编辑

概要

CHAR_LENGTH(string_exp) 

输入:

字符串表达式。如果为 null,则函数返回 null

输出: 整数

描述: 如果字符串表达式为字符数据类型,则返回输入的字符长度;否则,返回字符串表达式的字节长度(不大于比特数除以 8 的最小整数)。

SELECT CHAR_LENGTH('Elastic');

CHAR_LENGTH('Elastic')
----------------------
7

CONCAT

编辑

概要

CONCAT(
    string_exp1, 
    string_exp2) 

输入:

字符串表达式。将 null 视为空字符串。

字符串表达式。将 null 视为空字符串。

输出: 字符串

描述: 返回一个字符字符串,该字符串是将 string_exp1 连接到 string_exp2 的结果。

生成的字符串的字节长度不能超过 1 MB。

SELECT CONCAT('Elasticsearch', ' SQL');

CONCAT('Elasticsearch', ' SQL')
-------------------------------
Elasticsearch SQL

INSERT

编辑

概要

INSERT(
    source,      
    start,       
    length,      
    replacement) 

输入:

字符串表达式。如果为 null,则函数返回 null

整数表达式。如果为 null,则函数返回 null

整数表达式。如果为 null,则函数返回 null

字符串表达式。如果为 null,则函数返回 null

输出: 字符串

描述: 返回一个字符串,其中从 source 中删除了从 start 开始的 length 个字符,并将 replacement 插入到 source 中,从 start 开始。

生成的字符串的字节长度不能超过 1 MB。

SELECT INSERT('Elastic ', 8, 1, 'search');

INSERT('Elastic ', 8, 1, 'search')
----------------------------------
Elasticsearch

LCASE

编辑

概要

LCASE(string_exp) 

输入:

字符串表达式。如果为 null,则函数返回 null

输出: 字符串

描述: 返回一个与 string_exp 中的字符串相等的字符串,其中所有大写字符都转换为小写。

SELECT LCASE('Elastic');

LCASE('Elastic')
----------------
elastic

LEFT

编辑

概要

LEFT(
    string_exp, 
    count)      

输入:

字符串表达式。如果为 null,则函数返回 null

整数表达式。如果为 null,则函数返回 null。如果为 0 或负数,则函数返回空字符串。

输出: 字符串

描述: 返回 string_exp 最左侧的 count 个字符。

SELECT LEFT('Elastic',3);

LEFT('Elastic',3)
-----------------
Ela

LENGTH

编辑

概要

LENGTH(string_exp) 

输入:

字符串表达式。如果为 null,则函数返回 null

输出: 整数

描述: 返回 string_exp 中的字符数,不包括尾随空格。

SELECT LENGTH('Elastic   ');

LENGTH('Elastic   ')
--------------------
7

LOCATE

编辑

概要

LOCATE(
    pattern, 
    source   
    [, start]
)

输入:

字符串表达式。如果为 null,则函数返回 null

字符串表达式。如果为 null,则函数返回 null

整数表达式;可选。如果为 null01、负数或未指定,则搜索从第一个字符位置开始。

输出: 整数

描述: 返回 patternsource 中首次出现的起始位置。可选的 start 指定开始搜索的字符位置。如果 patternsource 中未找到,则函数返回 0

SELECT LOCATE('a', 'Elasticsearch');

LOCATE('a', 'Elasticsearch')
----------------------------
3
SELECT LOCATE('a', 'Elasticsearch', 5);

LOCATE('a', 'Elasticsearch', 5)
-------------------------------
10

LTRIM

编辑

概要

LTRIM(string_exp) 

输入:

字符串表达式。如果为 null,则函数返回 null

输出: 字符串

描述: 返回 string_exp 的字符,并删除前导空格。

SELECT LTRIM('   Elastic');

LTRIM('   Elastic')
-------------------
Elastic

OCTET_LENGTH

编辑

概要

OCTET_LENGTH(string_exp) 

输入:

字符串表达式。如果为 null,则函数返回 null

输出: 整数

描述: 返回输入表达式 string_exp 的字节长度。

SELECT OCTET_LENGTH('Elastic');

OCTET_LENGTH('Elastic')
-----------------------
7

POSITION

编辑

概要

POSITION(
    string_exp1, 
    string_exp2) 

输入:

字符串表达式。如果为 null,则函数返回 null

字符串表达式。如果为 null,则函数返回 null

输出: 整数

描述: 返回 string_exp1string_exp2 中的位置。结果为精确数值。

SELECT POSITION('Elastic', 'Elasticsearch');

POSITION('Elastic', 'Elasticsearch')
------------------------------------
1

REPEAT

编辑

概要

REPEAT(
    string_exp, 
    count)      

输入:

字符串表达式。如果为 null,则函数返回 null

整数表达式。如果为 0、负数或 null,则函数返回 null

输出: 字符串

描述: 返回一个字符字符串,该字符串由 string_exp 重复 count 次组成。

生成的字符串的字节长度不能超过 1 MB。

SELECT REPEAT('La', 3);

 REPEAT('La', 3)
----------------
LaLaLa

REPLACE

编辑

概要

REPLACE(
    source,      
    pattern,     
    replacement) 

输入:

字符串表达式。如果为 null,则函数返回 null

字符串表达式。如果为 null,则函数返回 null

字符串表达式。如果为 null,则函数返回 null

输出: 字符串

描述: 在 source 中搜索 pattern 的出现次数,并替换为 replacement

生成的字符串的字节长度不能超过 1 MB。

SELECT REPLACE('Elastic','El','Fant');

REPLACE('Elastic','El','Fant')
------------------------------
Fantastic

RIGHT

编辑

概要

RIGHT(
    string_exp, 
    count)      

输入:

字符串表达式。如果为 null,则函数返回 null

整数表达式。如果为 null,则函数返回 null。如果为 0 或负数,则函数返回空字符串。

输出: 字符串

描述: 返回 string_exp 最右侧的 count 个字符。

SELECT RIGHT('Elastic',3);

RIGHT('Elastic',3)
------------------
tic

RTRIM

编辑

概要

RTRIM(string_exp) 

输入:

字符串表达式。如果为 null,则函数返回 null

输出: 字符串

描述: 返回 string_exp 的字符,并删除尾随空格。

SELECT RTRIM('Elastic   ');

RTRIM('Elastic   ')
-------------------
Elastic

SPACE

编辑

概要

SPACE(count) 

输入:

整数表达式。如果为 null 或负数,则函数返回 null

输出: 字符串

描述: 返回一个由 count 个空格组成的字符字符串。

生成的字符串的字节长度不能超过 1 MB。

SELECT SPACE(3);

   SPACE(3)
---------------

STARTS_WITH

编辑

概要

STARTS_WITH(
    source,   
    pattern)  

输入:

字符串表达式。如果为 null,则函数返回 null

字符串表达式。如果为 null,则函数返回 null

输出: 布尔值

描述: 如果源表达式以指定的模式开头,则返回 true,否则返回 false。匹配区分大小写。

SELECT STARTS_WITH('Elasticsearch', 'Elastic');

STARTS_WITH('Elasticsearch', 'Elastic')
--------------------------------
true
SELECT STARTS_WITH('Elasticsearch', 'ELASTIC');

STARTS_WITH('Elasticsearch', 'ELASTIC')
--------------------------------
false

SUBSTRING

编辑

概要

SUBSTRING(
    source, 
    start,  
    length) 

输入:

字符串表达式。如果为 null,则函数返回 null

整数表达式。如果为 null,则函数返回 null

整数表达式。如果为 null,则函数返回 null

输出: 字符串

描述: 返回一个从 source 派生的字符字符串,从 start 指定的字符位置开始,长度为 length 个字符。

SELECT SUBSTRING('Elasticsearch', 0, 7);

SUBSTRING('Elasticsearch', 0, 7)
--------------------------------
Elastic

TRIM

编辑

概要

TRIM(string_exp) 

输入:

字符串表达式。如果为 null,则函数返回 null

输出: 字符串

描述: 返回 string_exp 的字符,并删除前导和尾随空格。

SELECT TRIM('   Elastic   ') AS trimmed;

trimmed
--------------
Elastic

UCASE

编辑

概要

UCASE(string_exp) 

输入:

字符串表达式。如果为 null,则函数返回 null

输出: 字符串

描述: 返回一个与输入字符串相等的字符串,其中所有小写字符都转换为大写。

SELECT UCASE('Elastic');

UCASE('Elastic')
----------------
ELASTIC