mysql - 在 MySQL 中返回 5 个月后一个月内的所有结果?
问题描述
我正在构建一个可以在给定月份的任何时间运行的 MySQL 报告。运行时,它需要在 5 个月后提取所有记录日期为该月的结果 - 例如,如果在 12 月的任何时间运行,它需要提取日期在 5 月 1 日到 5 月之间的任何记录2020 年 5 月 31 日,如果在 1 月运行,它将通过 6 月的记录等等。
一直在寻找一些不同的日期函数,但似乎找不到合适的函数让我使用日期间隔向前看 5 个月,但这只会显示我从该月的第一天到最后一天。
我似乎最接近的是这个(我的查询不喜欢):
due_date <= DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE()) + 6, -1) AND due_date >= DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE()) + 5, 0
谢谢
解决方案
您可以尝试以下查询以获得该结果 -
SELECT adddate(current_date, interval 5 month) curr_date
,DATE_SUB(adddate(current_date, interval 5 month),INTERVAL DAYOFMONTH(adddate(current_date, interval 5 month))-1 DAY) AS '1st of month'
,last_day(adddate(now(), interval 5 month)) last_of_month;
这是小提琴。
推荐阅读
- git - 如何在 Elcipse IDE 中设置新的 Git 身份验证
- javascript - Next.js 链接不强制组件渲染,serverSideProps 不更新
- javascript - 如何用给定的数组替换字符串中的字符串
- aggregate - DDD、事件溯源和聚合状态的形状
- assembly - 将 .data 部分中定义的整数移动到寄存器
- android - 如何解决此错误“引发了另一个异常:NoSuchMethodError:在 null 上调用了 getter 'name'”?(扑)
- python - 在没有 GIL 的情况下不允许来自 Python 的强制,并行使用数组(Cython 中的多线程)
- python - discord.py:从 SQLite3 数据库中读取多个用户时出现问题
- python - 你可以从 git 安装一个 python 文件作为一个模块吗?
- css - 适合div中图像的高度或宽度,较小的那个