进阶4:常见函数
概念:
好处:1、隐藏了实现细节 2、提高代码的重用性
调用:SELECT 函数名(实参列表)
特点:
① 叫什么(函数名)
② 干什么(函数功能)
分类:
1.单行函数
如 concat、length、ifnull
等
2、分组函数
功能:做统计使用,又称为统计函数、聚合函数、组函数
单行函数分为:
字符函数
数学函数
日期函数
其他函数【补充】
流程控制函数【补充】
一、字符函数
1.大小写操作函数:
lower
:将字符串转换成小写
upper
:将字符串转换成大写
SELECT LOWER('HELLO');
SELECT UPPER('hello');
2.字符串操作函数:length、concat、substr、instr、trim、replace、lpad、rpad
① LENGTH(str)
:获取字符串的字节个数(字母和数字是一个字节,汉字是三个字节)
SELECT LENGTH('张三');
② CONCAT(str1,str2,...)
:拼接字符串
③ substr、substring
用来截取某个字符串中的一部分。(指的是字符长度,目前只有length是字节长度)
语法:substr(string,pos,length)
或者 SUBSTR(str FROM pos FOR len)
string
参数:必选。数据库中需要截取的字段。
pos
参数:必选。如果是正数,从字符串指定位开始截;
如果是负数,从字符串结尾指定位开始截取;
在sql中,索引是从1开始的。如果索引是0则为空。
length
参数:可选。需要截取的长度。如果省略,即截取到结束位置。
注意:若必选参数为null,那返回的结果也为null。
SELECT SUBSTR('123456',1,2);
④ INSTR(str,substr)
:求子串在父串中的位置,0表示没有在父串中找到该子串。显示的是父串中第一次出现的位置
SELECT INSTR(123456,56);
⑤ TRIM([remstr FROM] str)
用来移除掉一个字串中的字头或字尾。最常见的用途是移除字首或字尾的空格。
remstr
要移除的字符,如果没写就是移除空格
str
被移除的字符串
SELECT trim(' 上课JFK积分 ')
SELECT TRIM('a' FROM 'aaaaa司凤aaaaaaaa')
⑥ LPAD(str,len,padstr)
从左边对字符串使用指定的字符进行填充
RPAD(str,len,padstr)
从右边对字符串使用指定的字符进行填充
str
准备被填充的字符串;
len
填充之后的字符串长度,如果这个数量比原字符串的长度要短,lpad函数将会把字符串截取成从左到右的n个字符;
padstr
填充字符串,是个可选参数,这个字符串是要粘贴到string的左边,如果这个参数未写,lpad函数将会在string的左边粘贴空格。
SELECT LPAD('手动',5,'a'