MySQL函数
主要是一些常用的MySQL函数
函数相互之间可以嵌套。如:SELECT CONCAT('日期为:', LEFT('2020-02-02 01:10:00', 10)) AS date;
字符串函数:主要用于处理字符串。
0、LENGTH(str) :返回字符串的长度
SELECT LENGTH('abc');
SELECT LENGTH(' abc ');
1、CONCAT(str1,str2....strn):将字符串str1,str2等多个字符串合并为一个字符串,如有任何一个参数为NULL ,则返回值为 NULL。
SELECT CONCAT('姓名:',' 年龄:') AS stu_info;
SELECT CONCAT('姓名:',name,' 年龄:',age) AS stu_info FROM students;
SELECT CONCAT('A',NULL,'C','123');
2、 CONCAT_WS(separator,str1,str2,...) ,是CONCAT()的特殊形式。
第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其它参数。
如果分隔符为 NULL,则结果为 NULL。函数会忽略任何分隔符参数后的 NULL 值。
SELECT CONCAT_WS(':','A','B','C','123');
SELECT CONCAT_WS(NULL,'A','B','C','123');
3、SUBSTRING(str,start,len) 返回从字符串str中的第start个位置开始长度为len的字符串,
第一个参数,必需,为字符串,第二个参数为位置,第三个参数为长度。
第二个参数,必需,为正数从字符串的头部(左侧)开始的位置,位置是从1开始的;为负数,从字符串结尾开始计算;
第三个参数,可选。一个非负的整数 。如果省略该参数,那么返回的子串会一直到字符串的结尾。大于字符的长度也是到字符串结尾。
SELECT SUBSTRING('abcdef',1);
SELECT SUBSTRING('abcdef',1,2);
SELECT SUBSTRING('abcdef',1,22);
4、LEFT(str,len) RIGHT(str,len) 返回str左边(右边)len个字符,str为null则返回null
SELECT LEFT('abcdef',1);
SELECT RIGHT('abcdef',1);
SELECT RIGHT(NULL,1);
5、TRIM(),LTRIM(),rRTRIM()去掉两边,左边,右边空格
SELECT CONCAT('1',TRIM(' abc '),'2'),CONCAT('1',LTRIM(' abc '),'2'),CONCAT('1',RTRIM(' abc '),'2');
6、REPLACE(str,a,b) 字符串替换,在字符串str中用字符串b替换所有的字符串a
SELECT REPLACE('ABCABAC','A','a');
SELECT REPLACE(NULL,'A','a');
7、LOWER(str),UPPER(str):将字符串转换为大写,小写
SELECT LOWER('ABC'),UPPER('abc');
8、INSERT(str,x,y,insert):从str的x位置开始,替换y长度的字符串为insert
SELECT INSERT('abcdefg',2,3,'hello');
9、LPAD(str,n,pad) RPAD(str,n,pad) 用pad对字符串str从最左边(右边)进行填充,直到总长度
达到n
SELECT name,LPAD(name,10,'#'),RPAD(name,10,'(') FROM students;