MySQL常用字符串函数

646 阅读2分钟

MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。

CONCAT()

CONCAT(str1,str2,...) 函数用于返回多个字符串连接之后的字符串,例如:

SELECT CONCAT('MySQL','字符串','函数') AS str;
// 等价于
SELECT 'MySQL' '字符串' '函数' AS str;
str           |
--------------+
MySQL字符串函数|

如果该函数中任一参数为NULL,返回结果为NULL。例如:

SELECT CONCAT('MySQL', NULL, '函数') AS str;
str|
---+
   |

如果启用了 SQL 模式 PIPES_AS_CONCAT,MySQL 逻辑或运算符(||)也可以用于连接字符串。
CONCAT_WS(separator,str1,str2,…))函数表示使用指定的分隔符 separator 连接多个字符串,分隔符为 NULL 则返回 NULL。例如:

SELECT CONCAT_WS('-', 'MySQL', NULL, '函数') AS str1,
       CONCAT_WS(NULL, 'MySQL', '字符串', '函数') AS str2;
str1       |str2|
-----------+----+
MySQL-函数 |    |

LENGTH()

CHAR_LENGTH(str)CHARACTER_LENGTH(str)函数用于返回字符串的字符长度。例如:

SELECT CHAR_LENGTH('MySQL字符串函数') AS len1, CHARACTER_LENGTH('MySQL字符串函数') AS len2;
len1|len2|
----+----+
  10|  10|

LENGTH(str)OCTET_LENGTH(str)函数用于返回字符串的字节长度,例如:

SELECT LENGTH('MySQL字符串函数') AS len1, OCTET_LENGTH('MySQL字符串函数') AS len2;
len1|len2|
----+----+
  20|  20|

BIT_LENGTH(str)函数用于返回字符串的比特长度,例如:

SELECT BIT_LENGTH('MySQL字符串函数') AS len;
len|
---+
160|

LOWER()

LOWER(str)LCASE(str)函数用于将字符串转换为小写形式,例如:

SELECT LOWER('MySQL字符串函数') AS str1, LCASE('MySQL字符串函数') AS str2;
str1          |str2          |
--------------+--------------+
mysql字符串函数|mysql字符串函数|

MySQL 大小写转换函数不支持二进制字符串,可以将其转换为非二进制的字符串之后再进行处理。例如:

SELECT LOWER(BINARY 'MySQL字符串函数') AS str1, LOWER(CONVERT(BINARY 'MySQL字符串函数' USING utf8)) AS str2;
str1               |str2          |
-------------------+--------------+
MySQLå­ ç¬¦ä¸²å ½æ °|mysql字符串函数|

UPPER()

UPPER(str)UCASE(str)函数用于将字符串转换为大写形式,例如:

SELECT UPPER('MySQL字符串函数') AS str1, UCASE('MySQL字符串函数') AS str2;
str1          |str2          |
--------------+--------------+
MYSQL字符串函数|MYSQL字符串函数|

TRIM()

TRIM([[BOTH | LEADING | TRAILING] regexStr FROM] str)函数用于返回删除字符串 str 两侧/左侧/右侧所有字符串 regexStr 之后的子串,regexStr 默认为空格。例如:

SELECT TRIM('  MySQL字符串函数  ') AS str1, TRIM(TRAILING  '-' FROM '--MySQL字符串函数--') AS str2;
str1          |str2          |
--------------+--------------+
MySQL字符串函数|--MySQL字符串函数|

REVERSE()

REVERSE(str)函数用于将字符串 str 中的字符顺序进行反转。例如:

SELECT REVERSE('上海自来水来自海上')='上海自来水来自海上' AS str;
str |
----+
   1|