最近一个项目,需要写很多的sql语句。涉及到很多与时间相关的处理,现在做一下简单的总结。
1.时间格式:在这个项目中,或许是由不同的人建立的数据库表结构吧,对时间的格式步统一,有的表中存储的long类型的时间戳,有的表中是存储的日期,有的表中存储的是时间,同时格式有20171225,2017-12-25等,一点都不统一。这样做,会对项目增加一些额外的工作量,同时会衍生出一些问题出来。比如,在写后台代码时,需要对时间做出处理,以适应数据库的时间格式;在进行夺标联合查询时,时间格式不统一,又会对sql语句进行时间格式转换,造成sql语句臃肿的情况。所以,在同一个项目中,时间格式应该保持统一。个人觉得long 类型的时间戳,以及String类型的yyyy-MM-dd HH:mm:ss 这两种方式时比较不错的。
long类型的时间戳,是因为后台java代码将date类型的时间转化为时间戳很容易。
String类型时因为,我们假如经常使用时间这个字段,在应用时不需要额外将Date类型转化为String类型,使用起来比较直观,方便。
2.常用时间语句
SELECT CURDATE():2020-10-7 //此时日期 SELECT NOW() : 2020-10-7 22:20:21 //此刻时间 SELECT YEAR('2020-10-7 22:27:45'): 2020 //获取时间的年份 SELECT MONTH('2020-10-7 22:27:45'): 10 //获取时间的月份 SELECT DAY('2020-10-7 22:27:45'):25 //获取时间的天数 SELECT HOUR('2020-10-7 22:27:45'):22 //获取时间的小时 SELECT MINUTE('2020-10-7 22:27:45'):27 //获取时间的分钟 SELECT SECOND('2020-10-7 22:27:45'):45 //获取时间的秒数
SELECT DATE_SUB(NOW(),INTERVAL 1 YEAR) //在目前的时间减去一年,该语句可以进行多种操作,指定时间下减去x年:DATE_SUB("2017-12-25",INTERVAL x YEAR),同时可以减去 x month/day/hour/minute/second等 SELECT DATE_ADD(NOW(),INTERVAL 1 YEAR) //同上,在目前的时间上加上一年 SELECT CONCAT('2017','-12-12'):2017-12-12 //组装字符串,可以组装成任何时间格式,也可以使用如上语句,例如:SELECT CONCAT(YEAR(NOW()),'-12-12') :2017-12-12 ; SELECT UNIX_TIMESTAMP('2017-12-25'):1514131200 //字符串转换成时间戳 SELECT FROM_UNIXTIME(1514131200) :2017-12-25 00:00:00 //时间戳转化为时间 SELECT DATE_FORMAT('2017-12-25 22:23:01', '%Y-%m-%d %H:%i:%s'); //字符串转化为时间格式(date),也可以时间格式转化为字符串格式
以上就是在mysql中比较常用的一些时间相关的语句。
推荐教程:mysql视频教程
mysql可以做日期处理吗
—–文章转载自PHP中文网如有侵权请联系admin#tyuanma.cn删除
mysql子条件查询语句是什么意思?
转载请注明来源:mysql可以做日期处理吗_编程技术_亿码酷站
本文永久链接地址:https://www.ymkuzhan.com/1634.html
本文永久链接地址:https://www.ymkuzhan.com/1634.html
下载声明:
本站资源如无特殊说明默认解压密码为www.ymkuzhan.com建议使用WinRAR解压; 本站资源来源于用户分享、互换、购买以及网络收集等渠道,本站不提供任何技术服务及有偿服务,资源仅提供给大家学习研究请勿作它用。 赞助本站仅为维持服务器日常运行并非购买程序及源码费用因此不提供任何技术支持,如果你喜欢该程序,请购买正版! 版权声明:
下载本站资源学习研究的默认同意本站【版权声明】若本站提供的资源侵犯到你的权益,请提交版权证明文件至邮箱ymkuzhan#126.com(将#替换为@)站长将会在三个工作日内为您删除。 免责声明:
您好,本站所有资源(包括但不限于:源码、素材、工具、字体、图像、模板等)均为用户分享、互换、购买以及网络收集而来,并未取得原始权利人授权,因此禁止一切商用行为,仅可用于个人研究学习使用。请务必于下载后24小时内彻底删除,一切因下载人使用所引起的法律相关责任,包括但不限于:侵权,索赔,法律责任,刑事责任等相关责任,全部由下载人/使用人,全部承担。以上说明,一经发布视为您已全部阅读,理解、同意以上内容,如对以上内容持有异议,请勿下载,谢谢配合!支持正版,人人有责,如不慎对您的合法权益构成侵犯,请联系我们对相应内容进行删除,谢谢!