首页 > 数据库 >无涯教程-MySQL String Functions函数

无涯教程-MySQL String Functions函数

时间:2023-11-28 13:31:58浏览次数:56  
标签:Functions set mysql 无涯 str MySQL 字符串 +------------------------------------------

Sr.No. Name & Description
1 ASCII()

返回最左边字符的数值

2 BIN()

返回参数的字符串表示形式

3 BIT_LENGTH()

返回参数的长度(以位为单位)

4 CHAR_LENGTH()

返回参数中的字符数

5 CHAR()

返回传递的每个整数的字符

6 CHARACTER_LENGTH()

CHAR_LENGTH()的同义词

7 CONCAT_WS()

返回用分隔符连接

8 CONCAT()

返回串联的字符串

9 CONV()

在不同的基数之间转换数字

10 ELT()

返回索引编号的字符串

11 EXPORT_SET()

返回一个字符串,这样对于值位中设置的每个位,您将获得一个on字符串,对于每个未设置的位,您将获得一个off字符串

12 FIELD()

返回后续参数中第一个参数的索引(位置)

13 FIND_IN_SET()

返回第二个参数中第一个参数的索引位置

14 FORMAT()

返回格式化为指定的小数位数的数字

15 HEX()

返回十六进制值的字符串表示形式

16 INSERT()

在指定位置插入子字符串,最多指定字符数

17 INSTR()

返回第一次出现的子字符串的索引

18 LCASE()

LOWER()的同义词

19 LEFT()

返回指定的最左边的字符数

20 LENGTH()

返回字符串的长度(以字节为单位)

21 LOAD_FILE()

加载命名文件

22 LOCATE()

返回第一次出现的子串的位置

23 LOWER()

以小写形式返回参数

24 LPAD()

返回字符串参数,用指定的字符串左填充

25 LTRIM()

删除前导空格

26 MAKE_SET()

返回一组逗号分隔的字符串,这些字符串在位中具有相应的位

27 MID()

返回从指定位置开始的子字符串

28 OCT()

返回八进制参数的字符串表示形式

29 OCTET_LENGTH()

LENGTH()的同义词

30 ORD()

如果参数的最左边的字符是多字节字符,则返回该字符的代码

31 POSITION()

LOCATE()的同义词

32 QUOTE()

转义要在SQL语句中使用的参数

33 REGEXP

使用正则表达式进行模式匹配

34 REPEAT()

重复字符串指定次数

35 REPLACE()

替换出现的指定字符串

36 REVERSE()

反转字符串中的字符

37 RIGHT()

返回指定的最右边字符

38 RPAD()

将字符串追加指定的次数

39 RTRIM()

删除尾随空格

40 SOUNDEX()

返回soundex字符串

41

比较声音

42 SPACE()

返回指定数量的字符串

43 STRCMP()

比较两个字符串

44 SUBSTRING_INDEX()

从指定分隔符出现次数之前的字符串中返回一个子字符串

45 SUBSTRING(), SUBSTR()

返回指定的子字符串

46 TRIM()

删除前导和尾随空格

47 UCASE()

UPPER()的同义词

48 UNHEX()

将每对十六进制数字转换为一个字符

49 UPPER()

转换为大写

ASCII码(str)

返回字符串str的最左边字符的数值。如果str是空字符串,则返回0。如果str为NULL,则返回NULL。 ASCII()适用于数字值介于0到255之间的字符。

mysql> SELECT ASCII('2');
+---------------------------------------------------------+
|                       ASCII('2')                        |
+---------------------------------------------------------+
|                           50                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT ASCII('dx');
+---------------------------------------------------------+
|                       ASCII('dx')                       |
+---------------------------------------------------------+
|                          100                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

BIN(N)

返回N的二进制值的字符串表示形式,其中N是一个longlong(BIGINT)数字。这等效于CONV(N,10,2)。如果N为NULL,则返回NULL。

mysql> SELECT BIN(12);
+---------------------------------------------------------+
|                          BIN(12)                        |
+---------------------------------------------------------+
|                           1100                          |
+---------------------------------------------------------+
1 row in set (0.00 sec)

BIT_LENGTH(str)

返回字符串str的长度(以位为单位)。

mysql> SELECT BIT_LENGTH('text');
+---------------------------------------------------------+
|                   BIT_LENGTH('text')                    |
+---------------------------------------------------------+
|                          32                             |
+---------------------------------------------------------+
1 row in set (0.00 sec)

CHAR(N,... [使用字符集名称])

CHAR()将每个参数N解释为一个整数,并返回一个由这些整数的代码值所给定的字符组成的字符串。跳过NULL值。

mysql> SELECT CHAR(77,121,83,81,'76');
+---------------------------------------------------------+
|                 CHAR(77,121,83,81,'76')                 |
+---------------------------------------------------------+
|                          MySQL                          |
+---------------------------------------------------------+
1 row in set (0.00 sec)

CHAR_LENGTH(str)

返回字符串str的长度,以字符为单位。多字节字符算作单个字符。这意味着对于包含五个两个字节的字符串,LENGTH()返回10,而CHAR_LENGTH()返回5。

mysql> SELECT CHAR_LENGTH("text");
+---------------------------------------------------------+
|                   CHAR_LENGTH("text")                   |
+---------------------------------------------------------+
|                            4                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

CHARACTER_LENGTH(str)

CHARACTER_LENGTH()是CHAR_LENGTH()的同义词。

CONCAT(str1,str2,...)

返回连接参数产生的字符串。可能有一个或多个参数。如果所有参数均为非二进制字符串,则输出为非二进制字符串。如果参数包含任何二进制字符串,则输出为二进制字符串。数字参数将转换为等效的二进制字符串形式;如果要避免这种情况,可以使用显式类型强制转换,如以下Example所示:

mysql> SELECT CONCAT('My', 'S', 'QL');
+---------------------------------------------------------+
|                 CONCAT('My', 'S', 'QL')                 |
+---------------------------------------------------------+
|                          MySQL                          |
+---------------------------------------------------------+
1 row in set (0.00 sec)

CONCAT_WS(分隔符,str1,str2,...)

CONCAT_WS()代表用分隔符连接,是CONCAT()的一种特殊形式。第一个参数是其余参数的分隔符。分隔符被添加到要连接的字符串之间。分隔符可以是字符串,其余参数也可以。如果分隔符为NULL,则输出为NULL。

mysql> SELECT CONCAT_WS(',','First name','Last Name' );
+---------------------------------------------------------+
|        CONCAT_WS(',','First name','Last Name' )         |
+---------------------------------------------------------+
|                 First name, Last Name                   |
+---------------------------------------------------------+
1 row in set (0.00 sec)

CONV(N,from_base,to_base)

在不同的基数之间转换数字. Returns a string representation of the number N, converted from base from_base to base to_base. Returns NULL if any argument is NULL. The argument N is interpreted as an integer, but may be specified as an integer or a string. The minimum base is 2 and the maximum base is 36. If to_base is a negative number, N is regarded as a signed number. Otherwise, N is treated as unsigned. CONV() works with 64-bit precision.

mysql> SELECT CONV('a',16,2);
+---------------------------------------------------------+
|                     CONV('a',16,2)                      |
+---------------------------------------------------------+
|                          1010                           |
+---------------------------------------------------------+
1 row in set (0.00 sec)

ELT(N,STR1,STR2,STR3,...)

如果N = 1,则返回str1;如果N = 2,则返回str2,依此类推。如果N小于1或大于参数个数,则返回NULL。 ELT()是FIELD()的补充。

mysql> SELECT ELT(1, 'ej', 'Heja', 'hej', 'foo');
+---------------------------------------------------------+
|            ELT(1, 'ej', 'Heja', 'hej', 'foo')           |
+---------------------------------------------------------+
|                            ej                           |
+---------------------------------------------------------+
1 row in set (0.00 sec)

EXPORT_SET(bits,on,off [,separator [,number_of_bits]])

返回一个字符串,这样对于值位中设置的每个位,您都会得到一个打开的字符串,对于值中未设置的每一个位,您都会得到一个关闭的字符串。从右到左(从低位到高位)检查位中的位。字符串从左到右添加到输出中,并由分隔符字符串分隔(默认为逗号。,。)。检查的位数由number_of_bits给出(默认为64)。

mysql> SELECT EXPORT_SET(5,'Y','N',',',4);
+---------------------------------------------------------+
|              EXPORT_SET(5,'Y','N',',',4)                |
+---------------------------------------------------------+
|                        Y,N,Y,N                          |
+---------------------------------------------------------+
1 row in set (0.00 sec)

FIELD(str,str1,str2,str3,...)

返回str1,str2,str3,...列表中str的索引(从1开始的位置)。如果找不到str,则返回0。

mysql> SELECT FIELD('ej', 'Hej', 'ej', 'Heja', 'hej', 'foo');
+---------------------------------------------------------+
|     FIELD('ej', 'Hej', 'ej', 'Heja', 'hej', 'foo')      |
+---------------------------------------------------------+
|                           2                             |
+---------------------------------------------------------+
1 row in set (0.00 sec)

FIND_IN_SET(str,strlist)

如果字符串str在由N个子字符串组成的字符串列表strlist中,则返回1到N范围内的值。

mysql> SELECT FIND_IN_SET('b','a,b,c,d');
+---------------------------------------------------------+
|             SELECT FIND_IN_SET('b','a,b,c,d')           |
+---------------------------------------------------------+
|                            2                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

格式(X,D)

将数字X格式化为'#,###,###。##'之类的格式,四舍五入到D小数位,然后将输出作为字符串返回。如果D为0,则输出没有小数点或小数部分。

mysql> SELECT FORMAT(12332.123456, 4);
+---------------------------------------------------------+
|                FORMAT(12332.123456, 4)                  |
+---------------------------------------------------------+
|                     12,332.1235                         |
+---------------------------------------------------------+
1 row in set (0.00 sec)

十六进制(N_or_S)

如果N_or_S是一个数字,则返回N的十六进制值的字符串表示形式,其中N是一个longlong(BIGINT)数字。这等效于CONV(N,10,16)。

如果N_or_S是字符串,则返回N_or_S的十六进制字符串表示形式,其中N_or_S中的每个字符都转换为两个十六进制数字。

mysql> SELECT HEX(255);
+---------------------------------------------------------+
|                        HEX(255)                         |
+---------------------------------------------------------+
|                           FF                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT 0x616263;
+---------------------------------------------------------+
|                        0x616263                         |
+---------------------------------------------------------+
|                          abc                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

插入(str,pos,len,newstr)

返回字符串str,子字符串从pos位置开始,并且len个字符由字符串newstr替换。如果pos不在字符串的长度内,则返回原始字符串。如果len不在字符串其余部分的长度内,则从位置pos替换字符串的其余部分。如果任何参数为NULL,则返回NULL。

mysql> SELECT INSERT('Quadratic', 3, 4, 'What');
+---------------------------------------------------------+
|           INSERT('Quadratic', 3, 4, 'What')             |
+---------------------------------------------------------+
|                       QuWhattic                         |
+---------------------------------------------------------+
1 row in set (0.00 sec)

INSTR(str,substr)

返回子字符串substr在字符串str中第一次出现的位置。这与LOCATE()的两个参数形式相同,除了参数的顺序相反。

mysql> SELECT INSTR('foobarbar', 'bar');
+---------------------------------------------------------+
|              INSTR('foobarbar', 'bar')                  |
+---------------------------------------------------------+
|                          4                              |
+---------------------------------------------------------+
1 row in set (0.00 sec)

LCASE(STR)

LCASE()是LOWER()的同义词。

左(str,len)

返回字符串str中最左边的len个字符;如果任何参数为NULL,则返回NULL。

mysql> SELECT LEFT('foobarbar', 5);
+---------------------------------------------------------+
|                  LEFT('foobarbar', 5)                   |
+---------------------------------------------------------+
|                         fooba                           |
+---------------------------------------------------------+
1 row in set (0.00 sec)

长度(str)

返回字符串str的长度,以字节为单位。多字节字符计为多个字节。这意味着对于包含五个两个字节的字符串,LENGTH()返回10,而CHAR_LENGTH()返回5。

mysql> SELECT LENGTH('text');
+---------------------------------------------------------+
|                      LENGTH('text')                     |
+---------------------------------------------------------+
|                            4                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

LOAD_FILE(文件名)

读取文件并以字符串形式返回文件内容。要使用此功能,文件必须位于服务器主机上,必须指定文件的完整路径名,并且必须具有FILE特权。该文件必须全部可读,并且其大小小于max_allowed_pa​​cket字节。

如果文件不存在或由于不满足上述条件之一而无法读取,则该函数返回NULL。

从MySQL 5.0.19开始,character_set_filesystem系统变量控制以文字字符串形式给出的文件名的解释。

mysql> UPDATE table_test
   -> SET blob_col = LOAD_FILE('/tmp/picture')
   -> WHERE id = 1;
...........................................................

LOCATE(substr,str),LOCATE(substr,str,pos)

第一种语法返回子字符串substr在字符串str中首次出现的位置。第二种语法返回字符串str中子字符串substr第一次出现的位置,从位置pos开始。如果substr不在str中,则返回0。

mysql> SELECT LOCATE('bar', 'foobarbar');
+---------------------------------------------------------+
|                LOCATE('bar', 'foobarbar')               |
+---------------------------------------------------------+
|                            4                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

降低(str)

返回字符串str,其中所有字符均根据当前字符集映射更改为小写。

mysql> SELECT LOWER('QUADRATICALLY');
+---------------------------------------------------------+
|                 LOWER('QUADRATICALLY')                  |
+---------------------------------------------------------+
|                     quadratically                       |
+---------------------------------------------------------+
1 row in set (0.00 sec)

LPAD(STR,只是padstr)

返回字符串str,将其左填充字符串padstr至len个字符的长度。如果str大于len,则返回值缩短为len个字符。

mysql> SELECT LPAD('hi',4,'??');
+---------------------------------------------------------+
|                    LPAD('hi',4,'??')                    |
+---------------------------------------------------------+
|                          ??hi                           |
+---------------------------------------------------------+
1 row in set (0.00 sec)

LTRIM(str)

返回已删除前导空格字符的字符串str。

mysql> SELECT LTRIM('  barbar');
+---------------------------------------------------------+
|                   LTRIM('  barbar')                     |
+---------------------------------------------------------+
|                        barbar                           |
+---------------------------------------------------------+
1 row in set (0.00 sec)

MAKE_SET(位,str1,str2,...)

返回一个设置值(一个字符串,该字符串包含用。,。字符分隔的子字符串),该值由在位中具有相应位的字符串组成。 str1对应于位0,str2对应于位1,依此类推。 str1,str2,...中的NULL值不会附加到输出中。

mysql> SELECT MAKE_SET(1,'a','b','c');
+---------------------------------------------------------+
|                  MAKE_SET(1,'a','b','c')                |
+---------------------------------------------------------+
|                             a                           |
+---------------------------------------------------------+
1 row in set (0.00 sec)

MID(STR,POS,LEN)

MID(STR,POS,LEN) is a synonym for SUBSTRING(str,pos,懒惰).

十月(N)

返回N的八进制值的字符串表示形式,其中N是一个longlong(BIGINT)数字。这等效于CONV(N,10,8)。如果N为NULL,则返回NULL。

mysql> SELECT OCT(12);
+---------------------------------------------------------+
|                        OCT(12)                          |
+---------------------------------------------------------+
|                          14                             |
+---------------------------------------------------------+
1 row in set (0.00 sec)

OCTET_长度(str)

OCTET_LENGTH()是LENGTH()的同义词。

ORD(STR)

如果字符串str的最左边的字符是多字节字符,则返回该字符的代码,该代码是使用以下公式根据其组成字节的数值计算得出的-

  (1st byte code)
+ (2nd byte code � 256)
+ (3rd byte code � 2562) ...

如果最左边的字符不是多字节字符,则ORD()返回与ASCII()函数相同的值。

mysql> SELECT ORD('2');
+---------------------------------------------------------+
|                        ORD('2')                         |
+---------------------------------------------------------+
|                           50                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

位置(substr IN str)

位置(substr IN str) is a synonym for LOCATE(substr,str).

报价(str)

引用字符串以产生可在SQL语句中用作正确转义的数据值的输出。返回的字符串用单引号引起来,并带有单引号(','),反斜杠('\'),ASCII NUL和Control-Z的每个,其后加反斜杠。如果参数为NULL,则返回值为单词'NULL',而不用单引号引起来。

mysql> SELECT QUOTE('Don\'t!');
+---------------------------------------------------------+
|                     QUOTE('Don\'t!')                    |
+---------------------------------------------------------+
|                        'Don\'t!'                        |
+---------------------------------------------------------+
1 row in set (0.00 sec)

注意-请检查您的安装是否有此功能的错误,然后不要使用此功能。

expr REGEXP模式

此函数执行expr与pattern的模式匹配。如果expr与pat匹配,则返回1;否则,返回0。否则返回0。如果expr或pat为NULL,则输出为NULL。除了与二进制字符串一起使用时,REGEXP都不区分大小写。

mysql> SELECT 'ABCDEF' REGEXP 'A%C%%';
+---------------------------------------------------------+
|               'ABCDEF' REGEXP 'A%C%%'                   |
+---------------------------------------------------------+
|                         0                               |
+---------------------------------------------------------+
1 row in set (0.00 sec)

另一个Example是-

mysql> SELECT 'ABCDE' REGEXP '.*';
+---------------------------------------------------------+
|                  'ABCDE' REGEXP '.*'                    |
+---------------------------------------------------------+
|                            1                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

让我们再看一个Example-

mysql> SELECT 'new*\n*line' REGEXP 'new\\*.\\*line';
+---------------------------------------------------------+
|          'new*\n*line' REGEXP 'new\\*.\\*line'          |
+---------------------------------------------------------+
|                            1                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

重复(str,count)

返回由重复计数次数的字符串str组成的字符串。如果count小于1,则返回一个空字符串。如果str或count为NULL,则返回NULL。

mysql> SELECT REPEAT('MySQL', 3);
+---------------------------------------------------------+
|                   REPEAT('MySQL', 3)                    |
+---------------------------------------------------------+
|                    MySQLMySQLMySQL                      |
+---------------------------------------------------------+
1 row in set (0.00 sec)

替换(str,from_str,to_str)

返回字符串str,其中所有出现的字符串from_str都替换为字符串to_str。搜索from_str时,REPLACE()执行区分大小写的匹配。

mysql> SELECT REPLACE('www.mysql.com', 'w', 'Ww');
+---------------------------------------------------------+
|           REPLACE('www.mysql.com', 'w', 'Ww')           |
+---------------------------------------------------------+
|                   WwWwWw.mysql.com                      |
+---------------------------------------------------------+
1 row in set (0.00 sec)

反向(str)

返回字符串str,其字符顺序颠倒。

mysql> SELECT REVERSE('abcd');
+---------------------------------------------------------+
|                      REVERSE('abcd')                    |
+---------------------------------------------------------+
|                           dcba                          |
+---------------------------------------------------------+
1 row in set (0.00 sec)

RIGHT(STR,LEN)

返回字符串str中最右边的len个字符;如果任何参数为NULL,则返回NULL。

mysql> SELECT RIGHT('foobarbar', 4);
+---------------------------------------------------------+
|                RIGHT('foobarbar', 4)                    |
+---------------------------------------------------------+
|                        rbar                             |
+---------------------------------------------------------+
1 row in set (0.00 sec)

RPAD(STR,只是padstr)

返回字符串str,用padstr右填充字符串,长度为len个字符。如果str大于len,则返回值缩短为len个字符。

mysql> SELECT RPAD('hi',5,'?');
+---------------------------------------------------------+
|                     RPAD('hi',5,'?')                    |
+---------------------------------------------------------+
|                          hi???                          |
+---------------------------------------------------------+
1 row in set (0.00 sec)

RTRIM(str)

返回删除了结尾空格字符的字符串str。

mysql> SELECT RTRIM('barbar   ');
+---------------------------------------------------------+
|                     RTRIM('barbar   ')                  |
+---------------------------------------------------------+
|                           barbar                        |
+---------------------------------------------------------+
1 row in set (0.00 sec)

声音(str)

返回soundex字符串 from str. Two strings that sound almost the same should have identical soundex strings. A standard soundex string is four characters long, but the SOUNDEX() function returns an arbitrarily long string. You can use SUBSTRING() on the result to get a standard soundex string. All non-alphabetic characters in str are ignored. All international alphabetic characters outside the A-Z range are treated as vowels.

mysql> SELECT SOUNDEX('Hello');
+---------------------------------------------------------+
|                   SOUNDEX('Hello')                      |
+---------------------------------------------------------+
|                         H400                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

expr1类似于expr2的声音

这与SOUNDEX(expr1)= SOUNDEX(expr2)相同。

空格(N)

mysql> SELECT SPACE(6);
+---------------------------------------------------------+
|                     SELECT SPACE(6)                     |
+---------------------------------------------------------+
|                        '      '                         |
+---------------------------------------------------------+
1 row in set (0.00 sec)

STRCMP(str1,str2)

比较两个字符串 and returns 0 if both strings are equal, it returns -1 if the first argument is smaller than the second according to the current sort order otherwise it returns 1.

mysql> SELECT STRCMP('MOHD', 'MOHD');
+---------------------------------------------------------+
|                 STRCMP('MOHD', 'MOHD')                  |
+---------------------------------------------------------+
|                            0                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

另一个Example是-

mysql> SELECT STRCMP('AMOHD', 'MOHD');
+---------------------------------------------------------+
|                STRCMP('AMOHD', 'MOHD')                                 |
+---------------------------------------------------------+
|                          -1                                                      |
+---------------------------------------------------------+
1 row in set (0.00 sec)

让我们再看一个Example-

mysql> SELECT STRCMP('MOHD', 'AMOHD');
+---------------------------------------------------------+
|                STRCMP('MOHD', 'AMOHD')                                 |
+---------------------------------------------------------+
|                           1                                                       |
+---------------------------------------------------------+
1 row in set (0.00 sec)

SUBSTRING(str,pos)

SUBSTRING(str from pos)

SUBSTRING(str,pos,懒惰)

SUBSTRING(str from pos for len)

没有len参数的表单从字符串str返回一个从位置pos开始的子字符串。带有len参数的表单从字符串str返回一个len字符长的字符串,从位置pos开始。使用FROM的表单是标准SQL语法。 pos也可以使用负值。在这种情况下,子字符串的开头是字符串末尾的pos字符,而不是开头。可以以此函数的任何形式将负值用于pos。

mysql> SELECT SUBSTRING('Quadratically',5);
+---------------------------------------------------------+
|              SSUBSTRING('Quadratically',5)              |
+---------------------------------------------------------+
|                       ratically                         |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT SUBSTRING('foobarbar' FROM 4);
+---------------------------------------------------------+
|              SUBSTRING('foobarbar' FROM 4)              |
+---------------------------------------------------------+
|                       barbar                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT SUBSTRING('Quadratically',5,6);
+---------------------------------------------------------+
|              SUBSTRING('Quadratically',5,6)             |
+---------------------------------------------------------+
|                         ratica                          |
+---------------------------------------------------------+
1 row in set (0.00 sec)

SUBSTRING_INDEX(str,delim,count)

在出现定界符delim之前,从字符串str返回子字符串。如果count为正,则返回最后定界符左侧的所有内容(从左侧开始计数)。如果count为负,则返回最后定界符右边的所有内容(从右边开始计数)。搜索delim时,SUBSTRING_INDEX()执行区分大小写的匹配。

mysql> SELECT SUBSTRING_INDEX('www.mysql.com', '.', 2);
+---------------------------------------------------------+
|         SUBSTRING_INDEX('www.mysql.com', '.', 2)        |
+---------------------------------------------------------+
|                         www.mysql                       |
+---------------------------------------------------------+
1 row in set (0.00 sec)

TRIM([{{BOTH | LEADING | TRAILING} [remstr] FROM] str)

TRIM([remstr FROM] str)

返回删除了所有remstr前缀或后缀的字符串str。如果没有给出两个说明符BOTH,LEADING或TRAILING,则假定两者均为。 remstr是可选的,如果未指定,则将删除空格。

mysql> SELECT TRIM('  bar   ');
+---------------------------------------------------------+
|                     TRIM('  bar   ')                    |
+---------------------------------------------------------+
|                          bar                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT TRIM(LEADING 'x' FROM 'xxxbarxxx');
+---------------------------------------------------------+
|            TRIM(LEADING 'x' FROM 'xxxbarxxx')           |
+---------------------------------------------------------+
|                         barxxx                          |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT TRIM(BOTH 'x' FROM 'xxxbarxxx');
+---------------------------------------------------------+
|            TRIM(BOTH 'x' FROM 'xxxbarxxx')              |
+---------------------------------------------------------+
|                          bar                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT TRIM(TRAILING 'xyz' FROM 'barxxyz');
+---------------------------------------------------------+
|           TRIM(TRAILING 'xyz' FROM 'barxxyz')           |
+---------------------------------------------------------+
|                         barx                            |
+---------------------------------------------------------+
1 row in set (0.00 sec)

UCASE(str)

UCASE()是UPPER()的同义词。

UNHEX(str)

执行HEX(str)的逆运算。即,它将参数中的每对十六进制数字解释为一个数字,并将其转换为该数字表示的字符。输出字符以二进制字符串形式返回。

mysql> SELECT UNHEX('4D7953514C');
+---------------------------------------------------------+
|                    UNHEX('4D7953514C')                  |
+---------------------------------------------------------+
|                          MySQL                          |
+---------------------------------------------------------+
1 row in set (0.00 sec)

参数字符串中的字符必须为合法的十六进制数字:" 0" .." 9"," A" .." F"," a" .." f"。如果UNHEX()在参数中遇到任何非十六进制数字,则返回NULL。

上(str)

返回字符串str,其中所有字符均根据当前字符集映射更改为大写。

mysql> SELECT UPPER('Allah-hus-samad');
+---------------------------------------------------------+
|                  UPPER('Allah-hus-samad')               |
+---------------------------------------------------------+
|                      ALLAH-HUS-SAMAD                    |
+---------------------------------------------------------+
1 row in set (0.00 sec)

有关更多信息,请检查MySQL官方网站-字符串函数

参考链接

https://www.learnfk.com/mysql/mysql-string-functions.html

标签:Functions,set,mysql,无涯,str,MySQL,字符串,+------------------------------------------
From: https://blog.51cto.com/u_14033984/8600354

相关文章

  • 无涯教程-MySQL Numeric Functions函数
    MySQL数值函数主要用于数值运算和/或数学计算。下表详细介绍了MySQL实现中可用的数值函数。Sr.No.Name&Description1ABS()返回数值表达式的绝对值。2ACOS()返回数值表达式的反余弦值。如果该值不在-1到1之间,则返回NULL。3ASIN()返回数字表达式的反正弦值。如......
  • MySQL5.7到8.0的升级迁移!1分钟搞定MySQL多版本数据迁移
    在上个月,MySQL5.7正式结束了生命周期,即EOL(EndofLife),意味着Oracle将不再为MySQL5.7提供技术支持,包括Bug修复或安全漏洞,大大增加了使用数据库的风险。在全球关系型数据库市场中,MySQL市场份额最高,在MySQL各版本使用中,5.7仍占据大部分比例,其次是5.6和8.0。因此,此次MySQL5......
  • mysql 报错which is not functionally dependent on columns in GROUP BY clause; thi
    Expression#2ofSELECTlistisnotinGROUPBYclauseandcontainsnonaggregatedcolumn'd.Id'whichisnotfunctionallydependentoncolumnsinGROUPBYclause;thisisincompatiblewithsql_mode=only_full_group_bywindow系统中,服务中找到mysql服务"......
  • Flask-SQLAlchemy flask-migrate mysql用法记录
    一、简介二、内容三、问题 一、简介Flask-SQLAlchemy是一个为Flask应用增加SQLAlchemy支持的扩展。它致力于简化在Flask中SQLAlchemy的使用。SQLAlchemy是目前python中最强大的ORM框架,功能全面,使用简单。ORM优缺点优点有语法提示,省去自己拼写SQL,保......
  • php mysql操作
    连接数据库mysqli_connect()mysql(host,username,password,dbname,port,socket);host:主机名或IP地址username:mysql用户名password:mysql密码dbname:使用的数据库port:mysql服务器的端口号socket:规定socket或使用已命名pipe断开数据库连接mysqli_close()boolmysqli_clo......
  • 无涯教程-MySQL AVG Function函数
    MySQLAVG函数用于查找各种记录中某个字段的平均值。要了解AVG函数,请考虑一个employee_tbl表,该表具有以下记录-mysql>SELECT*FROMemployee_tbl;+------+------+------------+--------------------+|id|name|work_date|daily_typing_pages|+------+-......
  • 无涯教程-MySQL MIN Function函数
    MySQLMIN函数用于在记录集中找出最小值的记录。要了解MIN函数,请考虑一个employee_tbl表,该表具有以下记录-mysql>SELECT*FROMemployee_tbl;+------+------+------------+--------------------+|id|name|work_date|daily_typing_pages|+------+-----......
  • 无涯教程-MySQL IN Clause函数
    您可以使用IN子句替换许多OR条件要了解IN子句,请考虑一个employee_tbl表,该表具有以下记录-mysql>SELECT*FROMemployee_tbl;+------+------+------------+--------------------+|id|name|work_date|daily_typing_pages|+------+------+------------......
  • 远程连接mysql
    1.打开命令面板第一步:首先打开cmd第二步:然后输入Ipconfig第三步:查看以太网适配器下的ipv4地址2.进入数据库mysql-uroot-puse库名;然后grantselect,insert,update,deleteon*.*toroot@"别人的IP地址"Identifiedby"密码"或者grantallon*.*toroot@"......
  • 无涯教程-PERL函数
    本教程将教您如何在Perl脚本中访问数据库。从Perl5开始,使用DBI模块编写数据库应用程序变得非常容易。DBI代表Perl的数据库独立接口,这意味着DBI在Perl代码和基础数据库之间提供了一个抽象层,使您可以真正轻松地切换数据库实现。DBI是Perl编程语言的数据库访问模块。它提供......