以下是mysql常用的日期时间查询语句,其中,时间字段名是默认以datetime格式的,如果是int时间戳格式的时间,则需要在时间字段名字段上,加上from_unixtime(时间字段名)。
查询当天的数据:
select * from dls6 where to_days(时间字段名)=to_days(now());
查询昨天的数据:
select * from dls6 WHERE to_days(now())-to_days(时间字段名)<=1;
查询本周的数据:
select * from dls6 WHERE yearweek(date_format(时间字段名,'%Y-%m-%d'))=yearweek(now());
查询最近一周(近7天)的数据:
select * from dls6 where date_sub(curdate(),interval day)<=date(时间字段名);
查询本月的数据:
select * from dls6 where date_sub(时间字段名,'%Y%m')=date_format(curdate(),'%Y%m');
查询最近一月(近30天)的数据:
select * from dls6 where date_sub(curdate(),interval 30 day)<=date(时间字段名);
查询最近6个月(以当前时间计算)的数据:
select * from dls6 where 时间字段名 between date_sub(now(),interval 6 month) and now();
查询上月的数据:
select * from dls6 where period_diff(date_format(now(),'%Y%m'),date_format(时间字段名,'%Y%m'))=1;
查询本季度的数据:
select * from dls6 where quarter(时间字段名)=quarter(now());
查询上季度数据:
select * from dls6 where quarter(时间字段名)=quarter(date_sub(now(),interval 1 quarter));
查询本年数据:
select * from dls6 where year(时间字段名)=year(now());
查询上年数据:
select * from dls6 where year(时间字段名)=year(date_sub(now(),interval 1 year));
查询指定时间段的数据:
select * from dls6 where 时间字段名>='2025-01-01 00:00:00' and 时间字段名<='2025-12-31 23:59:59';
计算两个日期的时间差:
相差秒:
select timestampdiff(second,时间字段1,时间字段2);
相差分钟数:
select timestampdiff(minute,时间字段1,时间字段2);
相差小时数:
select timestampdiff(hour,时间字段1,时间字段2);
相差天数:
select timestampdiff(day,时间字段1,时间字段2);
相差周数:
select timestampdiff(week,时间字段1,时间字段2);
相差月数:
select timestampdiff(month,时间字段1,时间字段2);
相差季度数:
select timestampdiff(quarter,时间字段1,时间字段2);
相差年数:
select timestampdiff(year,时间字段1,时间字段2);
获取本周第一天的日期:
select date_sub(curdate(),interval weekday(curdate())+1 day);
获取本周最后一天的日期:
select date_sub(curdate(),interval weekday(curdate())-5 day);
获取上周的第一天日期:
select date_sub(curdate(),interval weekday(curdate())+8 day);
获取上周的最后一天日期:
select date_sub(curdate(),interval weekday(curdate())+2 day);
获取本月最后一天的日期:
select last_day(now());
获取上月最后一天的日期:
select last_day(now()-interval 1 month);
获取本季度最后一天的日期:
select last_day(makedate(extract(year from curdate()),1) + interval quarter(curdate())*3-1 month);
获取上季度最后一天的日期:
select last_day(makedate(extract(year from curdate()),1) + interval quarter(curdate())*3-4 month);
最近更换电脑,需要重新安装macos。为了便于切换,使用了virtualbox进行安装。但是安装了N次,总是卡在黑屏代码,一切都是按照流程步骤来的,而且都是很简单的操作,也并没有太多需要注意和调整的地方,这是怎么回事呢?忽然想起来,在vir...
目前国际主流通用的分页方式是使用counter和offset来计算,包括restful调用、接口以及各种应用对接,大多数API端点都遵循相同的约定来返回结果的后续页面。那么这个分页方式到底是怎么使用的呢?其中,counter(有时候也叫li...
网易企业邮箱:smtphz.qiye.163.com465网易163/126/yeah系列邮箱:smtp.163.com465QQ邮箱:smtp.exmail.qq.com465阿里云企业邮箱smtp.qiye.aliyun.com465微...
Edge浏览器的Copilot功能,在使用网页web编辑器或者输入框时,如果选中文本,则会强制弹出一个“使用Copilot改写”的提示框,容易遮挡到编辑器的工具栏,很是烦人,如图:那么怎么来关闭这个功能呢?解决方法如下:1.点击Edge浏览...
今天有同学在群里提问,在使用photoshop编辑文字时,经常会弹出一个文字选择的面板如图:这时文字也无法输入,也无法取消和关闭,很是烦人,怎么取消这个功能呢?经过丁老师研究,方法很简单:1.打开photoshop菜单-编辑2.选择首选项-...
最近要在某单位内网部署项目,使用了lnmp来配置环境,软件安装成功,可安装后不管是打开ip地址还是默认站点,都提示nginx403forbidden,这是怎么回事呢?首先,已经出现了nginx403提示,说明nginx是安装正常的。其次,4...
挺不错的浏览器,强加入了edgeimageviewer图片浏览器,感觉不是那么好,对于开发者来说,更想要原生的东西。包括微信网页版里的表情图片,用edgeimageviewer打开的话,无法保存为gif格式,即使保存了,也只是第一帧静态的。...
windows11更新后,不管是桌面的右键,还是文件上点右键,都非常地别扭,而且也非常的卡顿。在网上找了一堆方法,都不管用,经过不懈努力,终于找到了真正能恢复经典版右键的方法。废话不多说,具体方法如下:1.以管理员方式运行CMD。打开后,在...