1、lower:将字符串参数值转换为全小写字母后返回。
mysql> select lower(name) from PLAYERS;
2、upper:将字符串参数值转换为全大写字母后返回
mysql> select upper(name) from PLAYERS;
3、concat:将多个字符串参数首尾相连后返回
mysql> select concat(name,sex) from PLAYERS;
注意:如果有任何参数为null时,则函数返回null,例:
mysql> select concat('my',null,'sql');
+-------------------------+
| concat('my',null,'sql') |
+-------------------------+
| NULL |
+-------------------------+
4、concat_ws:将多个字符串参数以给定的分隔符首尾相连后返回
mysql> select concat_ws(':','name','zhangsan');
+----------------------------------+
| concat_ws(':','name','zhangsan') |
+----------------------------------+
| name:zhangsan |
+----------------------------------+
5、substr:从源字符串中的指定位置开始取一个字串并返回
mysql> select substr('hello word',5);
+------------------------+
| substr('hello word',5) |
+------------------------+
| o word |
+------------------------+
mysql> select substr('hello word',5,3);
+--------------------------+
| substr('hello word',5,3) |
+--------------------------+
| o w |
+--------------------------+
mysql> select substr('hello word',-5);
+-------------------------+
| substr('hello word',-5) |
+-------------------------+
| word |
+-------------------------+
6、length:返回字符串的存储长度
mysql> select length('text'),length('你好');
+----------------+------------------+
| length('text') | length('你好') |
+----------------+------------------+
| 4 | 6 |
+----------------+------------------+
7、char_length :返回字符串中的字符个数
mysql> select char_length('text'),char_length('你好');
+---------------------+-----------------------+
| char_length('text') | char_length('你好') |
+---------------------+-----------------------+
| 4 | 2 |
+---------------------+-----------------------+
8、instr:从源字符串中返回子串第一次出现的位置
mysql> select instr('zhangnala','a');
+------------------------+
| instr('zhangnala','a') |
+------------------------+
| 3 |
+------------------------+
9、lpad:在源字符串的左边填充给定的字符到指定的长度,返回填充后的字符串
mysql> select lpad('hi',5,'*');
+--------------------+
| lpad('hi',5,'***') |
+--------------------+
| ***hi |
+--------------------+
10、rpld:在源字符串的右边填充给定的字符到指定的长度,返回填充后的字符串
mysql> select rpad('hi',5,'*');
+------------------+
| rpad('hi',5,'*') |
+------------------+
| hi*** |
+------------------+
11、trim:从源字符串str中去掉两端、前缀或后缀字符并返回。
如果不指定后缀字符,则默认去掉源字符串两端空格,不指定both,leading,trailing,则默认为both。
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.01 sec)
mysql> SELECT trim(' bar ');
+------------------+
| trim(' bar ') |
+------------------+
| bar |
+------------------+
1 row in set (0.00 sec)
12、replace:在源字符串中查找所有的子串(大小写敏感),找到后使用替代字符串替换它。返回替换后的字符串
mysql> select replace('www.com','w','m');
+----------------------------+
| replace('www.com','w','m') |
+----------------------------+
| mmm.com |
+----------------------------+
13、ltrim、rtrim:去掉字符串的左边或右边的空格
mysql> select rtrim(' zh '),ltrim(' zh ');
+------------------+-----------------+
| rtrim(' zh ') | ltrim(' zh ') |
+------------------+-----------------+
| zh | zh |
+------------------+-----------------+
14、repeat:将字符串重复一定数量后返回
mysql> select repeat('mysql',3);
+-------------------+
| repeat('mysql',3) |
+-------------------+
| mysqlmysqlmysql |
+-------------------+
15、reverse:将字符串反转后返回
mysql> select reverse('abc');
+----------------+
| reverse('abc') |
+----------------+
| cba |
+----------------+
16、char:将每个参数解释为整数(字符的编码),并返回每个整数对应的字符所构成的字符串
mysql> select char(77,121,83,81,'76'),char(77,'77.3',77.3);
+-------------------------+----------------------+
| char(77,121,83,81,'76') | char(77,'77.3',77.3) |
+-------------------------+----------------------+
| MySQL | MMM |
+-------------------------+----------------------+
17、format:format(X,D[,locale])
以格式‘#,###,###.###’格式化数字X,D指定小数位数,locale指定国家语言,它决定了小数点和千分位分隔符的作用,默认的locale为‘en_US’
mysql> select format(1233.456578,4);
+-----------------------+
| format(1233.456578,4) |
+-----------------------+
| 1,233.4566 |
+-----------------------+