mysql常用函数

1.CONCAT(S1,S2,...Sn)函数:

  把传入的参数连接成为一个字符串。

  例:

mysql> select concat('aa','bb','cc') ,concat('a',null);
+------------------------+------------------+
| concat('aa','bb','cc') | concat('a',null) |
+------------------------+------------------+
| aabbcc | NULL |
+------------------------+------------------+
1 row in set (0.00 sec)

注意:

  任何字符串与null进行连接的结果都将是null。

2.insert(str,x,y,instr)函数:

  将字符串str从第x位置开始,y个字符长的子串替换为字符串instr。

  例:   

mysql> select insert('hello yan',7,3,'li');
+------------------------------+
| insert('hello yan',7,3,'li') |
+------------------------------+
| hello li |
+------------------------------+
1 row in set (0.00 sec)

3.lower(str)和upper(str)函数:

  把字符串转换成小写或大写

  例:

mysql> select lower('YAN'),upper('yan');
+--------------+--------------+
| lower('YAN') | upper('yan') |
+--------------+--------------+
| yan | YAN |
+--------------+--------------+
1 row in set (0.00 sec)

4.left(str,x)和right(str,x)函数:

  分别返回字符串最左边的x个字符和最右边的x个字符。

  例:

mysql> select left('yanlipeng',8),left('yan',null),right('yanli',3);
+---------------------+------------------+------------------+
| left('yanlipeng',8) | left('yan',null) | right('yanli',3) |
+---------------------+------------------+------------------+
| yanlipen | NULL | nli |
+---------------------+------------------+------------------+
1 row in set (0.00 sec)

注意:

  第二个参数是null,那么将不返回任何字符串。

5.lpad(str,n,pad)和rpad(str,n,pad)函数:

  用字符串pad对str最左边和最右边进行填充,直到长度为n个字符长度。

  例: 

mysql> select lpad('2008',10,'beijing'),rpad('beijing',10,'2008');
+---------------------------+---------------------------+
| lpad('2008',10,'beijing') | rpad('beijing',10,'2008') |
+---------------------------+---------------------------+
| beijin2008 | beijing200 |
+---------------------------+---------------------------+
1 row in set (0.00 sec)

6.ltrim(str)和rtrim(str)函数:

  去掉字符串str左侧和右侧空格。

  例:   

mysql> select ltrim(' |bei'),rtrim('bei| ');
+-----------------+-----------------+
| ltrim(' |bei') | rtrim('bei| ') |
+-----------------+-----------------+
| |bei | bei| |
+-----------------+-----------------+
1 row in set (0.00 sec)

7.repeat(str,x)函数:

  返回str重复X次的结果。

  例:

mysql> select repeat('mysql ',3);
+--------------------+
| repeat('mysql ',3) |
+--------------------+
| mysql mysql mysql |
+--------------------+
1 row in set (0.00 sec)

8.replace(str,a,b)函数:

  用字符串b替换字符串str中所有出现的字符串a.

  例:

mysql> select replace('yan2018','2018','2019');
+----------------------------------+
| replace('yan2018','2018','2019') |
+----------------------------------+
| yan2019 |
+----------------------------------+
1 row in set (0.00 sec)

9.strcmp(s1,s2)函数:

  比较字符串s1和s2的ASCII码值的大小。

  例:

mysql> select strcmp('a','b'),strcmp('b','b'),strcmp('c','b');
+-----------------+-----------------+-----------------+
| strcmp('a','b') | strcmp('b','b') | strcmp('c','b') |
+-----------------+-----------------+-----------------+
| -1 | 0 | 1 |
+-----------------+-----------------+-----------------+
1 row in set (0.00 sec)

注意:

  如果s1比s2小,则返回-1;如果s1与s2相等,则返回0;如果s1比s2大,则返回1。

10.TRIM(str)函数:

  去掉目标字符串的开头和结尾的空格。

  例:

mysql> select trim(' | yan | ');
+----------------------+
| trim(' | yan | ') |
+----------------------+
| | yan | |
+----------------------+
1 row in set (0.00 sec)

11.substring(str,x,y)函数:

  返回从字符串str中的第x位置起y个字符长度的字串。

  例:  

mysql> select substring('ni hao ma',3,6);
+----------------------------+
| substring('ni hao ma',3,6) |
+----------------------------+
| hao m |
+----------------------------+
1 row in set (0.00 sec)

原文地址:https://www.cnblogs.com/xiaopeng01/p/11158636.html