字符串函数编辑

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

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 中删除了 length 个字符,从 start 开始,并将 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 指定开始搜索的字符位置。如果在 source 中找不到 pattern,则函数返回 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

输出:字符串

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

结果字符串的字节长度不能超过 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