mysql日期处理函数实例解析
这篇文章主要介绍了mysql日期处理函数实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
首先创建一张实验用的一张表
droptableifexistst_student; createtablet_student( idintprimarykeyauto_increment, namevarchar(20)notnullcomment'姓名', birthdaydatecomment'生日' )Engine=InnoDBdefaultcharsetutf8; insertintot_studentvalues(null,'tom','1992-02-03'); insertintot_studentvalues(null,'jerry','1993-02-06'); insertintot_studentvalues(null,'hank','1993-03-05'); insertintot_studentvalues(null,'xiaoming',now());
其中date类型是记录mysql精确日期的类型
now()函数
获取当前时间
year(),month(),dayofmonth()
上面三个函数是分别从一个日期或者时间中提取出年,月,日
比如想得到生日为2月份的学生
select*fromt_studentwheremonth(birthday)=2;
monthname()函数
输出个月份的英文单词
selectmonthname(birthday)fromt_student;
timestampdiff()函数
比较两个日期间的差值
例:学生的年龄
selecttimestampdiff(year,birthday,now())asagefromt_student;
timestampdiff函数的第一个参数为计算结果的单位:有year(年)month(月),day(日)等等。
to_days()
将日期转换成天数
计算两个时间的天数,同timestampdiff(day,arg1,arg2)是一个道理。
查询生日小于当前日期60以内的学生
select*fromt_studentwhere(to_days(now())-to_days(birthday))<60;
date_add和date_sub
根据一个日期,计算出另一个日期,date_add是加上date_sub是减去
selectdate_add('1970-1-1',interval10year);#1970年加上10年
selectdate_sub('1970-1-1',interval10year);#1970年减去10年
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。