mysql的日期查询操作,查询最近一天,一周,一个月
2015-08-09 17:07
701 查看
我的用例:String pubtime = this.getDateStr(days);List<MblogInfo> list_mblog = commonBaseDao.find("from MblogInfo where to_days(pubtime)>= to_days('" + pubtime + "')", null);select * from A where DATE(data) = '2012-07-09';这个可以准确的查询到7.9号这天的数据,而且效率很高。本周内:select * from wap_content where week(created_at) = week(now)查询一天:select * from table where to_days(column_time) = to_days(now());select * from table where date(column_time) = curdate();查询7天:select * from table where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(column_time);查询一个月:select * from table where DATE_SUB(CURDATE(), INTERVAL INTERVAL 1 MONTH) <= date(column_time);
今天 select * from 表名 where to_days(时间字段名) = to_days(now());昨天 Select * FROM 表名 Where TO_DAYS( NOW( ) ) – TO_DAYS( 时间字段名) <= 17天前 如果是7天后就是DATE_ADD函数Select * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(时间字段名)近30天前Select * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 30 DAY) <= date(时间字段名)本月Select * FROM 表名 Where DATE_FORMAT( 时间字段名, ‘%Y%m’ ) = DATE_FORMAT( CURDATE( ) , ‘%Y%m’ )上一月Select * FROM 表名 Where PERIOD_DIFF( date_format( now( ) , ‘%Y%m’ ) , date_format( 时间字段名, ‘%Y%m’ ) ) =1
//时间转成年月日时分秒select date_format(now(),'%Y%m%d%H%i%S')
//时间转成年月日select date_format(now(),'%Y%m%d')
//去年此时select DATE_ADD(now(), Interval -1 year)
//上月此时select DATE_ADD(now(), Interval -1 month)
//昨天此时select DATE_ADD(now(), Interval -1 day)
原文:http://www.2cto.com/database/201211/170388.html
更多:http://www.codesky.net/article/201003/168332.html
相关文章推荐
- mysql sql查询过程分析之explain关键字
- 装好MYsql后显示Access denied for user 'root'@'localhost' (using password: NO)
- 项目开发中用到的一些MySQL语句
- [转]mysql组合索引与字段顺序
- MySQL性能调优的14板斧
- win7中mysql5.7.7的配置部署
- MySQL的数据类型
- 解决MySQL查询不区分大小写
- ERROR! MySQL is running but PID file could not be found
- mysql 锁机制
- 压缩包Mysql的安装以及卸载的简单方法
- Mysql那些琐碎
- Mysql常用函数
- windows下mysql忘记root密码的解决方法
- 源码安装mysql
- Mysql之存储过程回顾
- mysql之触发器trigger
- MySQL性能优化的最佳20+条经验
- MySQL引擎讲解
- 初学nodejs连接mysql简单登陆实现