本文转自博文:https://blog.csdn.net/qq_42795259/article/details/126722209

遇到一个需求需要查询近两个月所有日期,如下图:

首先实现解决问题如何获取两个日期所有日期,可以通过以下sql实现功能:

SELECT
date_sub('2022-07-06',interval ( @i := @i - 1 ) day) as days
from mysql.help_topic
join (select @i:=1) c
where help_topic_id <= (TIMESTAMPDIFF(day,'2022-07-06','2022-09-06'))

在解决核心问题后,现在获取两个月前当前日期:

所以这个地方用到了,类

select DATE_ADD(NOW(), interval 1 MONTH) //NOW()此处必须为时间格式
————————————————————————
date_add() 增加
date_sub()减少
————————————————————
month 月份
minute 分钟
second 秒

得到以下函数今天日期和两个月后当前日期,再把她们结合在最开始两个时间段中可以得到最终sql,获取近两个月所有日期。

select curdate(); //获取今天
select date_sub(curdate(), interval 2 MONTH); //获取两个月后当前日期

SELECT
date_sub(date_sub(curdate(), interval 2 MONTH),interval ( @i := @i - 1 ) day) as days
from mysql.help_topic
join (select @i:=1) c
where help_topic_id <= (TIMESTAMPDIFF(day,date_sub(curdate(), interval 2 MONTH),curdate()))

同理可以实现其他功能,例如查询本年所有月份:

    SELECT DATE_FORMAT(DATE_ADD(CONCAT(YEAR(DATE(NOW())),'-01-01'),INTERVAL (CAST( help_topic_id AS SIGNED )) MONTH ),'%Y-%m') months
FROM mysql.help_topic
WHERE help_topic_id < 12 ORDER BY months ASC

————————————————
版权声明:本文为CSDN博主「沐游虞」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_42795259/article/details/126722209

mysql 查询两个日期之间所有天数(查询近两个月所有日期)的更多相关文章

  1. iOS 计算两个日期之间的天数问题

    //获取当前时间若干年.月.日之后的时间 + (NSDate *)dateWithFromDate:(NSDate *)date years:(NSInteger)years months:(NSIn ...

  2. Java计算两个字符串日期之间的天数差

    Java计算两个字符串日期之间的天数差 调用方法: public static void main(String[] args) throws ParseException { String a = ...

  3. JS计算两个日期之间的天数

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. JS计算两个日期之间的天数,时间差计算

    1.日期之间的天数计算 //计算天数差的函数,通用 function DateDiff(sDate1, sDate2) { //sDate1和sDate2是2017-9-25格式 var aDate, ...

  5. 武汉科技大学ACM :1010: 零起点学算法12——求2个日期之间的天数

    Problem Description 水题 Input 输入2个日期,日期按照年月日,年月日之间用符号-隔开(题目包含多组数据) Output 求出这2个日期之间的天数(不包括自身),每组测试数据一 ...

  6. 如何计算CDS view里两个时间戳之间的天数间隔

    ABAP透明表里的时间戳,数据类型为dec: 有个需求:计算这两个时间戳之间的天数间隔,丢弃时间戳年-月-日8位后面的小时:分钟:秒. 举个例子:如果时间戳是20180918173132,丢弃1731 ...

  7. c#后台计算2个日期之间的天数差

    / 计算2个日期之间的天数差 DateTime dt1 = Convert.DateTime("2007-8-1");  DateTime dt2 = Convert.DateTi ...

  8. mysql计算两个日期之间的天数

    MYSQL自带函数计算给定的两个日期的间隔天数   有两个途径可获得   1.利用TO_DAYS函数   select to_days(now()) - to_days('20120512')   2 ...

  9. js 求两个日期之间相差天数

    //求两个日期之间的相差天数 function daysBetween(DateOne, DateTwo) { var OneMonth = DateOne.substring(5, DateOne. ...

  10. java计算两个日期之间的天数,排除节假日和周末

    如题所说,计算两个日期之前的天数,排除节假日和周末.这里天数的类型为double,因为该功能实现的是请假天数的计算,有请一上午假的为0.5天. 不够很坑的是每个日期都要查询数据库,感觉很浪费时间. 原 ...

随机推荐

  1. 使用 defineNuxtRouteMiddleware 创建路由中间件

    title: 使用 defineNuxtRouteMiddleware 创建路由中间件 date: 2024/8/10 updated: 2024/8/10 author: cmdragon exce ...

  2. SMU Summer 2023 Contest Round 4

    SMU Summer 2023 Contest Round 4 A. Telephone Number 满足第一个8后面存在10个字符即可 #include <bits/stdc++.h> ...

  3. kubernetes中集成istio出现拉取配置中心数据失败导致服务启动失败 荐

    由于在k8s使用了grpc,所以这里我们集成istio来实现http2的自动发现以及负载均衡,但是随着节点增加,istio之前同步配置时间边长导致第一次启动时,服务启动拉取配置时istio却还没初始化 ...

  4. Linux查看硬件信息超强命令sar,以及可视化工具ksar

    一.概述 sar(System Activity Reporter,系统活动情况报告)是Linux下系统运行状态统计工具,可从多方面对系统的活动进行报告,包括:文件的读写情况.系统调用的使用情况.磁盘 ...

  5. PHP中的Malformed UTF-8 characters错误解决

    在PHP开发中,开发者经常会遇到Malformed UTF-8 characters错误.这个错误通常是由于代码中存在无效的UTF-8字符而引起的.本篇博客将为您介绍如何解决这个问题. 什么是UTF- ...

  6. Sql语句的两表联合查询

    string sql = "select mID,mName,mSex,mAge,(select fzName from TxlFenZu where ID=mFenZu) as mFenZ ...

  7. js_问题记录2022年6月24日19:35:12

    小问题中的大问题 新建子js脚本一定记得创建函数,不然写什么都无法实现 比如 新建了new1.js脚本,首先需要创建function后才能在里面进行参数操作和调用 js实现的功能: 获取到对应的id= ...

  8. Vue 项目 毒鸡汤 壮士可要来一碗!

    项目灵感来自"聆听远方"的毒鸡汤 非常简单 适合 Vue 新童鞋 按国际惯例 先上图 来不及解释了 快把代码复制走 poison-soup.html <!DOCTYPE ht ...

  9. animate动画库的使用

    在vue中便捷使用animate动画库效果. 安装animate动画库 npm install animate.css --save 在vue跟目录中 main.js 导入animate动画库 imp ...

  10. vue router路由配置,元信息meta的使用-登录拦截验证

    原文来自 vue router路由配置,元信息meta的使用-登录拦截验证_shenroom的博客-CSDN博客 看原文排版更舒服,我只是记录一下 路由基本配置1.在router文件夹中找到 inde ...