数据库MySQL学习——常见函数

目录

 

常见函数

字符函数

数字函数

日期函数

其他函数

流程控制函数

case函数的使用

 


常见函数

功能:类似于java的方法,将一组逻辑语句封装在方法体中,对外暴露方法名,

好处:

           1、隐藏了实现细节   2、提高代码的重用性

调用:select 函数名(实参列表) 【FROM 表】;

特点:1、叫什么(函数名)

           2、干什么的(函数功能)

分类:1、单行函数

            如:concat、length、ifnull等

           2、分组函数

功能:做统计使用,又称为统计函数、聚合函数,组函数

字符函数

字符函数:

#1.LENGTH 获取参数值的字节个数
SELECT LENGTH('john');
SELECT LENGTH('张三丰hahaha')  #一个汉字占三个字节(与使用的字符集有关)
SHOW VARIABLES like '%char%'  #查看字符集


#2.concat 拼接字符串
SELECT CONCAT(last_name,'_',first_name) AS 姓名 FROM employees ;


#3.upper、lower
SELECT UPPER('john');
SELECT LOWER('joHn');

#实例:将姓变大写,名变小写,在拼接
SELECT CONCAT(UPPER(last_name),'_',LOWER(first_name)) AS 姓名 from employees;


#4.substr、substring截选
	SELECT SUBSTR('李莫愁爱上了陆展元',6) AS out_put;
注意:索引从1开始(指索引处后面所有字符)
	SELECT SUBstr('李莫愁爱上了陆展元',1,3) as out_put; 
注意:从索引1开始,截选长度3(字符长度)


#案例:姓名中首字母大写,其他字母小写,然后拼接。

SELECT
	CONCAT(
		UPPER(substr(last_name, 1, 1)),
		LOWER(substr(first_name, 2))
	) out_put
FROM
	employees;



#5.instr(返回子串第一次出现的起始索引,如果没有就返回0)

SELECT INSTR('杨不悔爱上了殷六侠','殷六侠') AS out_put;


#6.trim
SELECT LENGTH(trim('       张翠山            ')) AS out_put
SELECT TRIM('a' FROM 'aaaaaaaaa张翠aaaaaaaaaaaa山aaaaaaaaaaaaaaaa')
SELECT TRIM('aa' FROM 'aaaaaaaaa张翠aaaaaaaaaaaa山aaaaaaaaaaaaaaaa')


#7 lpad(用指定的字符实现左填充指定长度)
# 指定字符'*',左填充'殷素素',填充之后的长度是10
SELECT LPAD('殷素素',10,'*') AS out_put;


#8 rpad(用指定的字符实现右填充指定长度)
SELECT RPAD('殷素素',12,'ab') AS out_put;

#9 replace 替换(多个替换)
SELECT REPLACE('张无忌爱上了周芷若周芷若周芷若','周芷若','赵敏') AS out_put;

数字函数

1、round函数(四舍五入)

例子:

输出:

   

2、Ceil函数:向上取整

例子:

输出:

 

3、Floor函数:向下取整

例子:

输出:

4、Truncate函数:截断

例子:

输出:

5、Mod函数:取余

例子:

 

输出:

                               

日期函数

函数测试:

    


       


  


  


   


   


   


 

   


 

  


其他函数

流程控制函数

#五、流程控制语句
#1、if函数:if else效果		
#if(参数1,参数2,参数3):如果参数1为true,则返回参数2,否则参数3

例子1:

 

输出1:

例子2:

输出2:

case函数的使用

case函数的使用一:
switch case 效果

/*
switch(变量或表达式){
	case 常量1:语句1 ;break;
	...
	default:语句n;break;
}

mysql中:

case	要判断的字段或者表达式
when 	常量1	then	要显示的值1或语句1;
when 	常量2	then	要显示的值1或语句2;
...
else 	要显示的值n或语句n;
end

*/

例子:

输出:

 

#case函数的使用二:类似于多重if

/*
java中:
if(条件1){
	语句1;
}else if(条件2){
	语句2;
}
....
else{
	语句n;
}


mysql中:

case 
when	条件1 then 要显示的值1或语句
when	条件2 then 要显示的值2或语句
...
else 	要显示的值n或者语句
end

*/

例子:

输出:

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值