mysql 查询指定日期时间内sql语句实现原理与代码

(编辑:jimmy 日期: 2025/1/18 浏览:2)

在数据库教程设计时必须注意时间字段为int(11)这样,保存在数据库的是一个数字型日期时间戳,我们可以用mktime函数求出当前日期的时间戳进行加减就OK了,下面看实例
//一个月
复制代码 代码如下:
$lastMonth = mktime(date(‘h'),date(‘i'),date(‘s'),date(‘m')-1,date(‘d'),date(‘y'));
$where .= ” dtime > $lastMonth”;

//三个月
复制代码 代码如下:
$lastThreeMonth = mktime(date(‘h'),date(‘i'),date(‘s'),date(‘m')-3,date(‘d'),date(‘y'));
$where .= ” dtime > $lastThreeMonth”;

$sql = “select * from testtable ” .$where
/*
原理是:
如果是月份就是当前的月减去你要统计的时间如我要查询数据库中从今天起往前三个月的所有记录,我们的语句如下:mktime(date(‘h'),date(‘i'),date(‘s'),date(‘m')-3,date(‘d'),date(‘y'));
七天内的:mktime(date(‘h'),date(‘i'),date(‘s'),date(‘m'),date(‘d')-7,date(‘y'));
一小时间内的:mktime(date(‘h')-1,date(‘i'),date(‘s'),date(‘m'),date(‘d'),date(‘y'));
上个月第一天:mktime(0,0,0,date(‘m')-1,01,date(‘Y'));
上个月最后一天:mktime(0,0,0,date(‘m'),0,date(‘y'));
本月第一天:这个简单,也就是01了;
本月最后一天:这要用到date函数了,date函数有一个参数t,它就是用来求最后一天的;如:date(‘t')
其它的做法是一样的。

一句话新闻

微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。