内容概述
● 数字函数:比如把数据转换成货币格式,计算四舍五入等;
● 字符函数:处理字符串的,比如转换大小写,计算字符串长度,替换字符串内容等;(比如,显示手机号码的时候,只显示号码后四位就是利用字符函数处理的)
● 日期函数:获取当前日期,计算两个日期相差天数,日期偏移等;(比如,计算100天后是几月几号,星期几就可以利用日期函数来实现)
● 条件函数:这类函数相对简单;
基本函数
MySQL基本函数
一:数字函数
注:
……………………………………………………
注:
二:日期函数
1.获取系统当前时间
……………………………………………………
常用的函数有 TIMEDIFF
和 TIMESTAMPDIFF
,两者用法稍有区别,后者更为灵活,这都是看个人习惯。
1. TIMEDIFF
:两个时间之间的差值
两者参数都是必须的,都是一个时间或者日期时间表达式。如果指定的参数不合法或者是 NULL,那么函数将返回 NULL。
对于这题而言,可以用在 minute 函数里面,因为 TIMEDIFF 计算出来的是时间的差值,在外面套一个 MINUTE 函数,计算出来的就是分钟数。
TIMESTAMPDIFF
:用于计算两个日期的时间差
这题需要进行分钟的比较,那么就是 TIMESTAMPDIFF (MINUTE, 开始时间,结束时间) < 5
2.日期格式化函数:
日期格式化函数:第一个参数是某个日期,第二个参数是希望得到的日期格式;
……………………………………………………
日期格式化函数中的表达式: 这儿的表达式是可以多个组合使用的。
案例1: 利用日期函数,查询明年你的生日是星期几
案例2: 利用日期函数,查询1981年上半年入职的员工有多少人:
……………………………………………………
日期函数注意事项:不能加减乘除运算
……………………………………………………
3.日期偏移计算函数:
……………………………………………………
4.日期偏移计算函数:
三:字符函数
字符函数是处理字符串的,如,手机号码隐藏只保留后四位,员工名字首字母大写等等。
……………………………………………………
四:条件函数
在编程语言里,可以做if else的条件判断,在MySQL中也有类似的内容。
1.简单的判断
案例1 :节日公司发放礼品,SALES部门发放礼品A,其他部门发放礼品B,打印每名员工发放的礼品:
SELECT e.empno,e.ename,d.dname, IF(d.dname=“SALES”,“礼品A”,“礼品B”) FROM t_emp e JOIN t_dept d ON e.deptno=d.deptno;
……………………………………………………
2.复杂的条件判断
【CASE WHEN THEN】不仅仅可以用在SELECT语句中,INSERT语句,DELETE语句,UPDATE语句都可以使用;
案例1 :公司组织员工集体旅游,每个部门旅游目的地是不同的;SALES部门去P1地点,ACCOUNTING部门去P2地点,RESEARCH部门去P3部门,查询每名员工的旅行地点;
标准写法:还好了,,,
……………………………………………………
案例2:【CASE WHEN THEN】不仅仅可以用在SELECT语句中,INSERT语句,DELETE语句,UPDATE语句都可以使用;
( 注:每一条WHEN中的条件,都是针对表连接后的结果集的同一条记录的。。。不仅仅针对这个案例, )