目录
一、MySQL的部分函数
1.1 日期函数
获取当前日期和时间:
select now();
获取日期中的天:
select day(now());
获取日期中的月:
select month(now());
获取日期中的年:
select year(now());
日期转换函数:DATE_FORMAT()/STR_TO_DATE()
DATE_FORMAT():将日期转换成字符串
select now(),DATE_FORMAT(now(),'%Y年%m月%d日')
STR_TO_DATE():将字符串转换成日期
select STR_TO_DATE('2022-07-05','%Y-%m-%d')
案例:
查询各学生的年龄,只按年份来算:
select s.*,year(now())-year(s.sage) 年龄 from t_student s;
按照出生日期来算,当前月日 < 出生年月的月日则,年龄减一;
select s.*,year(now())-year(s.sage)+if(month(now()) < month(s.sage),-1,0) 年龄 from t_student s;
查询本月过生日的学生
select * from t_student where month(now()) = month(sage);
查询下月过生日的学生
-- 方法1
select * from t_student where month(now())+1 = month(sage);
-- 方法2
select * from t_student where month(DATE_ADD(now(),interval 1 month)) = month(sage);
1.2 字符串函数
UPPER()/LOWER():大小写互转
select upper(' i love you ')
select lower(' GAO HUA ZI ')
R