使用MySQL和SQL Server生成最近七周和最近七个月的日期数据

server/2024/9/25 15:25:28/

数据库管理和数据处理中,生成特定时间范围内的数据是一项常见的任务。本文将介绍如何使用MySQL和SQL Server编写代码来生成最近七周和最近七个月的日期数据。

MySQL示例:生成最近七周和最近七个月的日期

在MySQL中,我们可以通过日期函数和临时表来生成最近七周和最近七个月的日期数据。以下是示例代码:

-- 生成最近七周的日期
DROP TEMPORARY TABLE IF EXISTS WeekRange;
CREATE TEMPORARY TABLE WeekRange (SalesDay DATE
);INSERT INTO WeekRange (SalesDay)
SELECT CURDATE() - INTERVAL (n.number * 7) DAY
FROM (SELECT 0 AS number UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6
) AS n;SELECT * FROM WeekRange;-- 生成最近七个月的日期
DROP TEMPORARY TABLE IF EXISTS MonthRange;
CREATE TEMPORARY TABLE MonthRange (SalesDay DATE
);INSERT INTO MonthRange (SalesDay)
SELECT CURDATE() - INTERVAL (n.number) MONTH
FROM (SELECT 0 AS number UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6
) AS n;SELECT * FROM MonthRange;

SQL Server示例:生成最近七周和最近七个月的日期

在SQL Server中,我们同样可以通过日期函数和循环来生成最近七周和最近七个月的日期数据。以下是示例代码:

-- 生成最近七周的日期
IF OBJECT_ID('tempdb..#WeekRange') IS NOT NULLDROP TABLE #WeekRange;
CREATE TABLE #WeekRange (SalesDay DATE);DECLARE @WeekStartDate DATE = DATEADD(WEEK, -6, CAST(GETDATE() AS DATE));
DECLARE @WeekEndDate DATE = CAST(GETDATE() AS DATE);WHILE @WeekStartDate <= @WeekEndDate
BEGININSERT INTO #WeekRange (SalesDay) VALUES (@WeekStartDate);SET @WeekStartDate = DATEADD(WEEK, 1, @WeekStartDate);
ENDSELECT * FROM #WeekRange;-- 生成最近七个月的日期
IF OBJECT_ID('tempdb..#MonthRange') IS NOT NULLDROP TABLE #MonthRange;
CREATE TABLE #MonthRange (SalesDay DATE);DECLARE @MonthStartDate DATE = DATEADD(MONTH, -6, CAST(GETDATE() AS DATE));
DECLARE @MonthEndDate DATE = CAST(GETDATE() AS DATE);WHILE @MonthStartDate <= @MonthEndDate
BEGININSERT INTO #MonthRange (SalesDay) VALUES (@MonthStartDate);SET @MonthStartDate = DATEADD(MONTH, 1, @MonthStartDate);
ENDSELECT * FROM #MonthRange;

通过以上示例代码,我们展示了在MySQL和SQL Server中生成最近七周和最近七个月的日期数据的方法。这种灵活的日期生成方式可以根据不同的需求调整生成的时间范围,满足各种数据处理和报表需求。这对于数据分析、报表生成和业务决策提供了重要的支持。


http://www.ppmy.cn/server/17427.html

相关文章

Spring Gateway 网关常见配置说明

前言 Spring Gateway 是基于 Spring Framework 的 API 网关&#xff0c;它为微服务架构提供了路由、监控、弹性以及安全性等功能。Spring Gateway 使用非阻塞 API 和高性能的反应式编程模型来提供服务。 版本说明 本文的选项在多个最近的 Spring Cloud Gateway 版本中都是有…

【EBS】财务系统总账模块(GL)会计期间状态总结

EBS财务系统中的会计期间主要有5种状态&#xff0c;其关系是&#xff1a;从未打开 -> 将来录入 -> 打开 <-> 关闭 -> 永久关闭&#xff0c;这个关系中&#xff0c;“打开”状态和“关闭”状态是可以双向的&#xff0c;而其他的都是单向的&#xff0c;比如对于“…

TaskWeaver使用记录

TaskWeaver使用记录 1. 基本介绍2. 总体结构与流程3. 概念细节3.1 Project3.2 Session3.3 Memory3.4 Conversation3.5 Round3.6 Post3.7 Attachment3.8 Plugin3.9 Executor 4. 代码特点5. 使用过程5.1 api调用5.2 本地模型使用5.3 添加插件 6. 存在的问题与使用体验6.1 判别模型…

【threejs教程7】threejs聚光灯、摄影机灯和汽车运动效果

【图片完整效果代码位于文章末】 在上一篇文章中我们实现了汽车模型的加载&#xff0c;这篇文章主要讲如何让汽车看起来像在运动。同时列出聚光灯和摄像机灯光的加载方法。 查看上一篇&#x1f449;【threejs教程6】threejs加载glb模型文件&#xff08;小米su7&#xff09;&…

聚类分析字符串数组

聚类分析字符串数组 对多个字符串进行聚类分析旨在根据它们之间的相似度将这些字符串划分成若干个类别&#xff0c;使得同一类别内的字符串彼此相似度高&#xff0c;而不同类别间的字符串相似度低 小结 数据要清洗。清洗的足够准确&#xff0c;可能不需要用聚类分析了数据要…

跨境电商无货源模式汇总

跨境电商无货源模式是指在跨境电商业务中&#xff0c;不需要自己拥有实际的货物库存&#xff0c;而是通过与供应商或批发商建立合作关系&#xff0c;直接将订单信息传递给供应商&#xff0c;由供应商直接发货给最终客户的一种模式。本文将跨境电商无货源的几种模式与大家一同探…

IntelliJ IDEA - Lombok supports: OpenJDK javac, ECJ

问题描述 java: You arent using a compiler supported by lombok, so lombok will not work and has been disabled.Your processor is: com.sun.proxy.$Proxy26Lombok supports: OpenJDK javac, ECJ 解决方案 在 IDEA 设置中 File -> Settings 中找到配置如下&#xff1…

配置etcd、apiserver使用的cpu和内存资源

etcd pod 默认使用的cpu和内存都是100M,当集群变大时,资源会不够用,导致异常,如: apiserver 默认使用cpu为250M k8s-master121 kubelet[31020]: E0425 14:41:54.026671 31020 controller.go:187] failed to update lease, error: etcdserver: request timed out kubelet[3…