加入收藏 | 设为首页 | 会员中心 | 我要投稿 开发网_开封站长网 (http://www.0378zz.com/)- 科技、AI行业应用、媒体智能、低代码、办公协同!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql日期对照

发布时间:2022-06-15 13:39:03 所属栏目:MySql教程 来源:互联网
导读:在sql中对时间的操作有很多方法,我们这里总结了几种方法,像我自己做数据库时会把日期字段设置为int(10)这来保存日期的unix_timestamp,最后再加减比较也方便很多,因为我们用的时整型比较,有需要的朋友可以自己选择下面任何一种方法. 最简单的用date_format函
  在sql中对时间的操作有很多方法,我们这里总结了几种方法,像我自己做数据库时会把日期字段设置为int(10)这来保存日期的unix_timestamp,最后再加减比较也方便很多,因为我们用的时整型比较,有需要的朋友可以自己选择下面任何一种方法.
 
  最简单的用date_format函数进行比较,代码如下:
 
  select * from tb where c> date_format('2007-07-06','%Y%m%d') and c <= date_format('2007-07-09','%Y%m%d');
   
 
  select * from LOGINSTAT where STATDAY> date_format(curdate()-1,'%Y%m%d') and STATDAY >= date_format(curdate(),'%Y%m%d');
   
  --或者:
   
  select * from LOGINSTAT where STATDAY> date_format(curdate()-1,'%Y%m%d%H') and STATDAY >= date_format(curdate(),'%Y%m%d%H');
  其他用法,代码如下:
 
  select * from LOGINSTAT where STATDAY >= date_format('$date1','%Y%m%d%H') and STATDAY < date_format('$date','%Y%m%d%H')
 
  mysql数据库中存的时间格式为2008-12-28 18:08:08,现在先要从一个一个结果集rs中获得一个日期时间,我先用rs.getDate()方法试着获取时间,结果只有年月日,无法获取小时、分和秒,最后解决的方法是:
 
 
  分享三
 
  1,代码如下:
 
  SELECT * FROM 表名 WHERE 字段名 BETWEEN 'YYYY-MM-1' AND 'YYYY-MM-30';
 
  可以用日期时间函数进一步修正给出的日期,datetime和date型的数据可以直接比较,比较时datetime型的数据自动转换成date型数据.
 
  2,函数,代码如下:
 
  select *  
  from 表  
  where year(日期字段名)=2007 and month(日期字段名)=6 and day(日期字段名)=10
  我自己常用的是下面的方法,MySQL的UNIX_TIMESTAMP函数,比如:
 
  UNIX_TIMESTAMP('2008-08-08 20:08:08');
  UNIX_TIMESTAMP('2008-08-08');
  返回值是整数,代码如下:
 
  select * from table where createtime>unix_timestamp('2011-1-1 12:12:12');

(编辑:开发网_开封站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读