当前位置: 首页 > news >正文

SQL server with方法修改

SQL server with方法修改,SQL 2008 不支持 with方法  需要改写下:

WITH MonthsCTE AS (
4		SELECT @StartDate AS MonthStart
5		UNION ALL
6		SELECT DATEADD(month, -1, MonthStart)
7		FROM MonthsCTE
8		WHERE MonthStart > @EndDate
9	)
10
11	INSERT INTO dbo.dim_year_quarter_month ([dt],[year],[quarter],[ym]) 
12	SELECT 
13	    @DateThreshold as dt,
14		DATEPART(YEAR, MonthStart) AS year,
15		DATEPART(QUARTER, MonthStart) AS quarter,
16		CONVERT(varchar(7), MonthStart, 120) as ym
17	FROM MonthsCTE
18	WHERE MonthStart <= @StartDate
19	ORDER BY MonthStart DESC

改为

 

-- 创建临时表存储结果
        CREATE TABLE #TempMonths (
            MonthStart DATE
        )
        -- 使用WHILE循环填充临时表
        WHILE @CurrentDate >= @EndDate
        BEGIN
            INSERT INTO #TempMonths (MonthStart)
            VALUES (@CurrentDate);
            SET @CurrentDate = DATEADD(month, -1, @CurrentDate);
        END

        -- 插入新数据
        INSERT INTO dbo.dim_year_quarter_month([dt], [year], [quarter], [ym])
        SELECT 
            @DateThreshold as dt,
            DATEPART(YEAR, tm.MonthStart) AS year,
            DATEPART(QUARTER, tm.MonthStart) AS quarter,
            CONVERT(varchar(7), tm.MonthStart, 120) as ym
        FROM #TempMonths tm
        WHERE tm.MonthStart <= @StartDate
        ORDER BY tm.MonthStart DESC

        -- 清理临时表
        DROP TABLE #TempMonths

相关文章:

  • 两个src案例分享
  • SpringMVC框架学习笔记(八):自定义拦截器和异常处理
  • 第二十五篇——信息加密:韦小宝说谎的秘诀
  • R可视化:微生物相对丰度或富集热图可视化
  • RISC_CPU模块的调试
  • 开发一个python工具,pdf转图片,并且截成单个图片,然后修整没用的白边
  • MyBatis打印不带问号SQL
  • 电子书(chm)-加载JS--CS上线
  • 鸿蒙开发组件:【FA模型的Context】
  • 【html5的video标签在移动端的使用】【微信内部浏览器video自动播放】【vue-video-player】
  • 用ip link add link命令创建vlan子设备
  • 【踩坑】修复Ubuntu远程桌面忽然无法Ctrl C/V复制粘贴及黑屏
  • VMware清理拖拽缓存
  • Avalonia for VSCode
  • 电脑有线无线一起用怎么设置
  • (ckeditor+ckfinder用法)Jquery,js获取ckeditor值
  • 《Javascript高级程序设计 (第三版)》第五章 引用类型
  • 《Java编程思想》读书笔记-对象导论
  • 2017前端实习生面试总结
  • 8年软件测试工程师感悟——写给还在迷茫中的朋友
  • Android 控件背景颜色处理
  • canvas实际项目操作,包含:线条,圆形,扇形,图片绘制,图片圆角遮罩,矩形,弧形文字...
  • css系列之关于字体的事
  • JS创建对象模式及其对象原型链探究(一):Object模式
  • Js基础知识(四) - js运行原理与机制
  • JS学习笔记——闭包
  • Linux编程学习笔记 | Linux IO学习[1] - 文件IO
  • node和express搭建代理服务器(源码)
  • node入门
  • PAT A1017 优先队列
  • 编写高质量JavaScript代码之并发
  • 彻底搞懂浏览器Event-loop
  • 大数据与云计算学习:数据分析(二)
  • 今年的LC3大会没了?
  • 利用jquery编写加法运算验证码
  • 删除表内多余的重复数据
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • 关于Android全面屏虚拟导航栏的适配总结
  • 浅谈sql中的in与not in,exists与not exists的区别
  • ​​​​​​​STM32通过SPI硬件读写W25Q64
  • ​14:00面试,14:06就出来了,问的问题有点变态。。。
  • #NOIP 2014# day.1 T2 联合权值
  • $(selector).each()和$.each()的区别
  • (~_~)
  • (04)odoo视图操作
  • (9)YOLO-Pose:使用对象关键点相似性损失增强多人姿态估计的增强版YOLO
  • (顶刊)一个基于分类代理模型的超多目标优化算法
  • (接口自动化)Python3操作MySQL数据库
  • (论文阅读26/100)Weakly-supervised learning with convolutional neural networks
  • (算法)求1到1亿间的质数或素数
  • (一)C语言之入门:使用Visual Studio Community 2022运行hello world
  • (轉貼)《OOD启思录》:61条面向对象设计的经验原则 (OO)
  • ..回顾17,展望18
  • .Net 6.0 处理跨域的方式
  • .Net Attribute详解(上)-Attribute本质以及一个简单示例