SQL和MySQL以及DAX的日期表生成?数字型日期?将生成的日期表插入到临时表或者实体表中
几种生成日期表的方法
如何用SQL语句生成日期表呢?
如何用MySQL语句生成日期表呢?
如何用DAX语句生成日期表呢?
1. MySQL生成日期表
1.1 日期格式:yyyy-MM-dd 字符型 2024-01-02
-- 生成日期表
WITH RECURSIVE temp_dateTable AS (SELECT '2023-01-01' AS datekeyUNION ALLSELECT DATE_ADD(datekey, INTERVAL 1 DAY)FROM temp_dateTableWHERE datekey < '2023-12-31'
)
SELECT datekey FROM temp_dateTable
;
/*
datekey
2023-01-01
2023-01-02
2023-01-03
2023-01-04
*/
1.2 日期格式:yyyyMMdd 数字型 20240102
-- 生成日期表
WITH RECURSIVE temp_dateTable AS (SELECT 20240101 AS datekeyUNION ALLSELECT date_format(date_add(CONVERT(datekey, CHAR),interval 1 day), "%Y%m%d")+0FROM temp_dateTableWHERE datekey < 20240117
)
selectdt.datekey
from temp_dateTable dt
;
/*
datekey
20240101
20240102
20240103
20240104
*/
1.3 MySQL生成的日期表插入到实体表(临时表)
-- 删除表
DROP TABLE IF EXISTS create_dateTable;-- 创建表
CREATE TABLE create_dateTable (datekey DATE PRIMARY KEY
);-- 将查找出来的临时表插入到新创建的实体表
INSERT INTO create_dateTable
WITH RECURSIVE temp_dateTable AS (SELECT '2023-01-01' AS datekeyUNION ALLSELECT DATE_ADD(datekey, INTERVAL 1 DAY)FROM temp_dateTableWHERE datekey < '2023-12-31'
)
SELECT datekey FROM temp_dateTable;
-- 查找日期
SELECT * FROM create_dateTable;
2. SQL生成日期表
2.1 日期格式:yyyy-MM-dd 字符型 2024-01-02
DECLARE @BeginDate DATE, @EndDate DATE;
SET @BeginDate = '2023-09-01'
SET @EndDate = '2023-12-01'
;
WITH cteDate AS (SELECT @BeginDate AS CalendarDateUNION ALLSELECT DATEADD(DAY,1,CalendarDate)FROM cteDateWHERE CalendarDate <= @EndDate
)
SELECTCalendarDate DateKey,(DATEPART(YEAR,CalendarDate) * 10000) + (DATEPART(MONTH,CalendarDate) * 100) +DATEPART(DAY,CalendarDate) CalendarDate,DATEPART(YEAR,CalendarDate) AS Year,DATEPART(MONTH,CalendarDate) AS MonthNumber,DATENAME(MONTH,CalendarDate) AS Month,DATENAME(QUARTER,CalendarDate) AS Quarter, format(CalendarDate ,'yyyyMM') YeamMonth
FROM cteDate
OPTION (MAXRECURSION 0)
2.2 日期格式:yyyyMMdd 数字型 20240102
DECLARE @BeginDate INT, @EndDate INT;
SET @BeginDate = 20240101;
SET @EndDate = 20240117;
WITH cteDate AS (SELECT @BeginDate AS CalendarDateUNION ALLSELECT format(dateadd(day, 1, cast(CalendarDate as varchar(8))), 'yyyyMMdd')+0FROM cteDateWHERE CalendarDate < @EndDate
)
selectCalendarDate
from cteDate
/*
CalendarDate
20240101
20240102
20240103
20240104
*/
2.3 SQL生成的日期表插入到实体表(临时表)
DECLARE @BeginDate DATE, @EndDate DATE;
SET @BeginDate = '2023-09-01'
SET @EndDate = '2023-12-01'
;
WITH cteDate AS (SELECT @BeginDate AS CalendarDateUNION ALLSELECT DATEADD(DAY,1,CalendarDate)FROM cteDateWHERE CalendarDate <= @EndDate
)
SELECTCalendarDate DateKey,(DATEPART(YEAR,CalendarDate) * 10000) + (DATEPART(MONTH,CalendarDate) * 100) +DATEPART(DAY,CalendarDate) CalendarDate,DATEPART(YEAR,CalendarDate) AS Year,DATEPART(MONTH,CalendarDate) AS MonthNumber,DATENAME(MONTH,CalendarDate) AS Month,DATENAME(QUARTER,CalendarDate) AS Quarter, format(CalendarDate ,'yyyyMM') YeamMonthINTO #temp_dateTable
FROM cteDate
OPTION (MAXRECURSION 0);
SELECT * FROM #temp_dateTable
3. DAX日期表生成 自动日期表
EVALUATE
ADDCOLUMNS (CALENDARAUTO(),"Year", YEAR ( [Date] ),"Quarter No", QUARTER ( [Date] ),"Quarter", "Q" & QUARTER ( [Date] ),"Month No", MONTH ( [Date] ),"Month", FORMAT ( [Date], "MM" ),"Day", DAY ( [Date] )
)
3.2 DAX日期表生成 指定日期表
EVALUATE
ADDCOLUMNS (CALENDAR ( DATE ( 2023, 11, 01 ), DATE ( 2023, 12, 31 ) ),"Year", YEAR ( [Date] ),"Quarter No", QUARTER ( [Date] ),"Quarter", "Q" & QUARTER ( [Date] ),"Month No", MONTH ( [Date] ),"Month", FORMAT ( [Date], "MM" ),"Day", DAY ( [Date] )
)
相关文章:

SQL和MySQL以及DAX的日期表生成?数字型日期?将生成的日期表插入到临时表或者实体表中
几种生成日期表的方法 如何用SQL语句生成日期表呢? 如何用MySQL语句生成日期表呢? 如何用DAX语句生成日期表呢? 1. MySQL生成日期表 1.1 日期格式:yyyy-MM-dd 字符型 2024-01-02 -- 生成日期表 WITH RECURSIVE temp_dateTable …...
文件下载时利用redis的队列模式顺序下载文件,防止多文件任务下载导致OOM
1、controller层控制 Resourceprivate RedissonClient redissonClient;Slf4j Service public class CustomerSettlementExportServiceImpl implements ICustomerSettlementExportService { /*** 文件加入队列顺序导出** param pubFileExportList 参数* return 结果*/public Aja…...
第13章:Python TDD完善货币加法运算(二)
写在前面 这本书是我们老板推荐过的,我在《价值心法》的推荐书单里也看到了它。用了一段时间 Cursor 软件后,我突然思考,对于测试开发工程师来说,什么才更有价值呢?如何让 AI 工具更好地辅助自己写代码,或许…...

两份PDF文档,如何比对差异,快速定位不同之处?
PDF文档比对是通过专门的工具或软件,自动检测两个PDF文件之间的差异,并以可视化的方式展示出来。这些差异可能包括文本内容的修改、图像的变化、表格数据的调整、格式的改变等。比对工具通常会标记出新增、删除或修改的部分,帮助用户快速定位…...

ESP-Skainet语音唤醒技术,设备高效语音识别方案,个性化交互应用
在当今数字化、智能化飞速发展的时代,物联网(IoT)与人工智能(AI)的深度融合正在重塑我们的生活和工作方式。 在智能家居的生态系统中,语音唤醒技术不仅能够为用户提供个性化的服务,还能通过定制…...

地图:nuxt3高德地图简单使用 / nuxt2 + amap
一、官方网站 JS API 安全密钥使用-基础-进阶教程-地图 JS API 2.0 | 高德地图API 二、使用 2.1、创建应用 2.2、添加key,得到key值 2.3、nuxt3项目 引入amap 2.4、pages/map.vue <template><div class"container"><div id"map-co…...
走进DevOps:让开发与运维齐头并进
引言:开发与运维的“世纪和解” 还记得那些年,开发人员总是埋头写代码,然后甩手交给运维去部署,仿佛是把热山芋扔给别人。而运维呢,总是默默承受着系统崩溃、服务停机的风险,直到某一天他们终于忍不住咆哮&…...

力扣动态规划-5【算法学习day.99】
前言 ###我做这类文章一个重要的目的还是给正在学习的大家提供方向(例如想要掌握基础用法,该刷哪些题?建议灵神的题单和代码随想录)和记录自己的学习过程,我的解析也不会做的非常详细,只会提供思路和一些关…...
LLM(3) : 浏览器录制16K的音频并上传到后端
可被阿里云[qwen-audio-asr]大模型识别 HTML <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><title>录音并上传</title></head><body><button id"recordButton">开始/停…...

PyTorch使用教程(13)-一文搞定模型的可视化和训练过程监控
一、简介 在现代深度学习的研究和开发中,模型的可视化和监控是不可或缺的一部分。PyTorch,作为一个流行的深度学习框架,通过其丰富的生态系统提供了多种工具来满足这一需求。其中,torch.utils.tensorboard 是一个强大的接口&…...

服务器日志自动上传到阿里云OSS备份
背景 公司服务器磁盘空间有限,只能存近15天日志,但是有时需要查看几个月前的日志,需要将服务器日志定时备份到某个地方,需要查询的时候有地方可查。 针对这个问题,想到3个解决方法: 1、买一个配置比较低…...
树莓派学习
飞书:https://hi06pny1nlj.feishu.cn/docx/GYsMdth7ooNlbJx8zBDcdbcPnec?fromfrom_copylink csdn:https://blog.csdn.net/qq_41685627/article/details/145250576 基础工作 安装和部署 1.1 树莓派三种连接电脑的方式 https://blog.csdn.net/weixin…...
NestJS中实现注入多个实现了同一个接口的Service
在NestJS中有一种场景,在注入的时候需要将多个实现了同一个接口的service都注入到系统里,而NestJS中默认时没有这种注入,此时我们可以使用一个变通的provider来实现这一功能。 看下面例子,假定我们有一个OSService接口࿰…...

Qt按钮美化教程
前言 Qt按钮美化主要有三种方式:QSS、属性和自绘 QSS 字体大小 font-size: 18px;文字颜色 color: white;背景颜色 background-color: rgb(10,88,163); 按钮边框 border: 2px solid rgb(114,188,51);文字对齐 text-align: left;左侧内边距 padding-left: 10…...

基于单片机的多功能蓝牙语音智能台灯(论文+源码)
1总体方案设计 通过需求分析,本设计多功能蓝牙语音智能台灯的系统框图如图2.1所示,系统架构包括主控制器STM32F103单片机、HC-06蓝牙通信模块、LU-ASR01语音识别模块、OLED液晶、LED灯、按键等器件,在使用时用户可以通过手机APP、语音识别、…...
第15章:Python TDD应对货币类开发变化(二)
写在前面 这本书是我们老板推荐过的,我在《价值心法》的推荐书单里也看到了它。用了一段时间 Cursor 软件后,我突然思考,对于测试开发工程师来说,什么才更有价值呢?如何让 AI 工具更好地辅助自己写代码,或许…...
算法随笔_13: 有效三角形的个数
上一篇:算法随笔_12:最短无序子数组-CSDN博客 题目描述如下: 给定一个包含非负整数的数组 nums ,返回其中可以组成三角形三条边的三元组个数。 示例 1: 输入: nums [2,2,3,4] 输出: 3 解释:有效的组合是: 2,3,4 (使用第一个 2) 2,3,4 (使用第二个 2) 2,2,3 算法…...
WSL 2 自动更新 虚拟 IP 到 window hosts
window下的wsl2 开发中使用到 域名映射,但是WSL2 每次启动都会被分配一个虚拟的 ip 地址,每次启动虚拟ip 都不一样,导致要频繁 更改 window 的 hosts 文件,太麻烦了,所以写一个自动执行的 .sh 脚本,每次启动…...

我在广州学Mysql 系列——触发器的使用
ℹ️大家好,我是练小杰,这周是春节前的最后一周了,现在一双手数都能数得过来了!! 本播客将学习MYSQL中触发器的相关概念以及基础命令~~ 回顾:👉【MYSQL视图相关例题】 数据库专栏👉【…...
【useCallback Hook】在多次渲染中缓存组件中的函数,避免重复创建函数
文章目录 什么是 useCallback?基本语法 为什么需要 useCallback?示例1. 避免子组件重复创建函数2. 作为 useEffect 的依赖项 注意事项总结 在 React 开发中,性能优化是一个重要的主题。随着应用规模的增长,组件的重新渲染可能会变…...

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析
1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具,该工具基于TUN接口实现其功能,利用反向TCP/TLS连接建立一条隐蔽的通信信道,支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式,适应复杂网…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互
物理引擎(Physics Engine) 物理引擎 是一种通过计算机模拟物理规律(如力学、碰撞、重力、流体动力学等)的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互,广泛应用于 游戏开发、动画制作、虚…...

Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...

shell脚本--常见案例
1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...

DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...

云原生玩法三问:构建自定义开发环境
云原生玩法三问:构建自定义开发环境 引言 临时运维一个古董项目,无文档,无环境,无交接人,俗称三无。 运行设备的环境老,本地环境版本高,ssh不过去。正好最近对 腾讯出品的云原生 cnb 感兴趣&…...

如何更改默认 Crontab 编辑器 ?
在 Linux 领域中,crontab 是您可能经常遇到的一个术语。这个实用程序在类 unix 操作系统上可用,用于调度在预定义时间和间隔自动执行的任务。这对管理员和高级用户非常有益,允许他们自动执行各种系统任务。 编辑 Crontab 文件通常使用文本编…...