sql server 生成本月日期的临时表

ps 在某项报表的数据echarts展示时,因为有的天没有数据,直接统计出来数据格式不合适,

需要没有数据的那天数据为0。

所以需要生成本月的临时表,值默认为0,然后更新对应天的值,然后直接输出前端的格式

-- 创建临时表
CREATE TABLE #TempDates (
    DateOfMonth DATE
);
 
-- 计算本月的第一天 
DECLARE @FirstDayOfMonth DATE;

--获取当前日期是第几个月 然后0加这个月数 获得日期
SET @FirstDayOfMonth = DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE()), 0);
 
-- 插入本月的每一天
DECLARE @Counter INT;
SET @Counter = 0;
 --循环天数  取本月第一天加一个月减一天 获得这个月最后一天 然后获取天数
WHILE @Counter < DAY(DATEADD(DAY, -1, DATEADD(MONTH, 1, @FirstDayOfMonth)))
BEGIN

    --本月第一天加循环天数插入
    INSERT INTO #TempDates (DateOfMonth) VALUES (DATEADD(DAY, @Counter, @FirstDayOfMonth));
    SET @Counter = @Counter + 1;
END
 
-- 使用临时表
SELECT * FROM #TempDates;
 
-- 删除临时表
DROP TABLE #TempDates;

相关推荐

  1. sql server 生成本月日期临时

    2024-03-14 07:14:07       43 阅读
  2. MySQL生成日期序列与关联 SQL 查询

    2024-03-14 07:14:07       35 阅读
  3. 22.Oracle中临时空间

    2024-03-14 07:14:07       63 阅读
  4. SqlServer日期格式转换

    2024-03-14 07:14:07       58 阅读
  5. 日常开发有用到临时吗?

    2024-03-14 07:14:07       41 阅读
  6. sqlserver2012 解决日志问题

    2024-03-14 07:14:07       52 阅读
  7. MySQL内存临时区别

    2024-03-14 07:14:07       37 阅读
  8. c#生成临时文件

    2024-03-14 07:14:07       50 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-14 07:14:07       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-14 07:14:07       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-14 07:14:07       82 阅读
  4. Python语言-面向对象

    2024-03-14 07:14:07       91 阅读

热门阅读

  1. RocketMQ的两种消费模式

    2024-03-14 07:14:07       36 阅读
  2. 逻辑回归吧

    2024-03-14 07:14:07       39 阅读
  3. 使用链表的优先级队列

    2024-03-14 07:14:07       41 阅读
  4. qt+ffmpeg 实现音视频播放(一)

    2024-03-14 07:14:07       37 阅读
  5. Qt如何保证控件调用时候的线程安全

    2024-03-14 07:14:07       40 阅读
  6. 22.5 RabbitMQ

    2024-03-14 07:14:07       36 阅读