进阶四:常见函数
概念:类似于Java的方法,将一组逻辑语句
好处:1、隐藏了实现细节,2、提高代码的重用性
调用:select函数名(实参列表)【from 表】;
特点:
1.叫什么(函数名)
2.干什么(函数功能)
分类:
1、单行函数
如 concat、length、ifnull等
2、分组函数
功能:做统计使用,又称为统计函数、聚合函数、函数族
常见函数:
字符函数:
length
concat
substr
instr
trim
upper
lower
lpad
rpad
replace
数学函数:
round
ceil
floor
truncate
mod
日期函数:
now
curdate
curtime
year
month
monthname
day
hour
minute
second
str_to_date
date_format
其他函数:
version
database
user
控制函数
if
case
一、字符函数
1.length
SELECT
LENGTH('john');
SELECT
LENGTH('张三丰hahaha');
SHOW
VARIABLES LIKE '%char%'#
2.concat 拼接字符串
SELECT
CONCAT(last_name,'_',first_name)
FROM
employees;
3.upper 转换至大写 lower转换至小写
SELECT
UPPER('abcd');
SELECT
LOWER('ABCD');
实例:将姓变大写,名变小写,然后拼接
SELECT
CONCAT(UPPER(last_name),LOWER(first_name)) AS 姓名
FROM
employees;
4.substr 截取字符
SELECT
SUBSTR('李莫愁爱上了陆湛远',7) AS 姓名;
SELECT
SUBSTR('李莫愁爱上了陆湛远',1,3) AS 姓名;
#案例:姓名中首字符大写,其他字符小写然后用_拼接显示出来
SELECT
CONCAT(UPPER(SUBSTR(last_name,1,1)),LOWER(SUBSTR(last_name,2)),LOWER(first_name)) AS 姓名
FROM
employees;
5.instr 返回子串在主串中的第一次出现的索引
SELECT
INSTR('杨不悔爱上了殷六侠','殷六侠');
6.trim 去掉字符前后的某个字符 默认去空格
SELECT
TRIM(' 张翠山 ') AS out_put;
SELECT
TRIM('a' FROM'aaaaaa张aaaa翠山 aaaa') AS out_put;
SELECT
TRIM('aa' FROM'aaaaa张aaaa翠山 aaaa') AS out_put;
7.lpad 用指定的字符实现左填充指定的长度
SELECT
LPAD('殷素素',10,'*') AS out_put;
SELECT
LPAD('殷素素',2,'*') AS out_put;##超过会截断
8.rpad
SELECT
RPAD('殷素素',12,'ab') AS out_put; #右填充
9.replace 替换
SELECT
REPLACE('张无忌爱上周芷若了周芷若','周芷若','赵敏') AS out_put;