本篇内容主要讲解“mysql数据库怎么取得某一段时间内的纪录”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“mysql数据库怎么取得某一段时间内的纪录”吧!
一般来说,我们在mysql数据库纪录数据时间时,都会选择datatime类型,这样时间可以精确 到秒。但随之而来的一个问题是,当我们要取得某一段时间内的数据内容会有一些时间转换上的麻烦,例如我们要取得2002年3月2日到2003年7月8日的 这段时间的内容,我们第一个直觉就是应该将sql写成下面的形式:
select * from yourdb where sj>='2002-3-2' and sj<= '2003-7-8'
这样以来,我们取得数据内容就是2002年3月2日0点以后到2003年7月8日0点(也就是7月7号12点之前)之间的内容,这个当然不是我们想要的,所以需要使用mysql的时间函数to_days()来写这个sql:
select * from yourdb where to_days(sj)>=to_days('2002-3-2') and sj<= to_days('2003-7-8')
现在,我们所取得就是我们想要的结果了。
比如我要取这样的广告位 :广告位id为1,并且时间上前后限定;
select * from t_ads a where a.adsPosId = 1 and TO_DAYS(NOW()) >= TO_DAYS(a.beginDate)
and TO_DAYS(NOW()) < TO_DAYS(a.endDate)
到此,相信大家对“mysql数据库怎么取得某一段时间内的纪录”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。