Sql Server 按日统计产量
碰到一个这样的需求,需要查询每天的产量,直接 group 是可以分出不同天的产量,但是如果当天没有生产,就会少一条那一天的记录,而不是那一天显示产量为0,这样不方便前端显示曲线。
于是找到下面的办法,按月份显示产量,如果当天没有生产,产量显示为 0。其他按日,按年查询也可以根据下面的框架修改。
declare @date datetime
set @date= '2023-12-01 00:00:00.000';
with t as
(
select number 日期
from master..spt_values with(nolock)
where type= N'P'
and number >= 1
and number <= datediff(DAY, DATEADD(MONTH, DATEDIFF(MONTH,0,@date), 0), DATEADD(MONTH, DATEDIFF(MONTH, 0, @date) + 1, 0))
), t2 as
(
SELECT DATEPART(day, DateTime_Offload) AS [日], count( [ID]) 产量
FROM [dbo].[Production_Data]
where DateTime_Offload > dateadd(ms,-3,DATEADD(mm, DATEDIFF(mm,0, @date), 0)) and DateTime_Offload < dateadd(ms,-3,DATEADD(mm, DATEDIFF(mm,0, @date) + 1, 0)) and Station_Offload = 'OP265'
group by DATEPART(day, DateTime_Offload)
)
select 日期, case when (产量 is null) then 0 else 产量 end 产量 from t left join t2 on t.日期 = t2.日
按每个月的实际日期数生成如下(这里值演示了5天,实际查询会显示当月的真实天数):
| 日期 | 产量 |
| 1 | 64 |
| 2 | 0 |
| 3 | 97 |
| 4 | 0 |
| 5 | 0 |
Sql Server 按日统计产量的更多相关文章
- SQL Server里等待统计(Wait Statistics)介绍
在今天的文章里我想详细谈下SQL Server里的统计等待(Wait Statistics),还有她们如何帮助你立即为什么你的SQL Server当前很慢.一提到性能调优,对我来说统计等待是SQL S ...
- SQL Server中sp_spaceused统计数据使用的空间总量不正确的原因
很多时候,我们经常使用sp_spaceused来查看表的空间使用情况,上个月群里有个网友说他使用DELETE删除了数据后,使用sp_spaceused查看,发现该表的分配的空间总量(reserved) ...
- SQL Server 无法生成 FRunCM 线程。请查看 SQL Server 错误日志和 Windows 事件日志
1.IP地址配置不正确: 打开 Microsoft SQL Server 2005配置工具下的SQL Server Configuration Manager,选择MSSQLSERVER协议, 然后双 ...
- Sql Server 2008日志满的解决办法
通过sql命令 USE ZGZY; GO --由完整模式设置为简单恢复模式 ALTER DATABASE ZGZY SET RECOVERY SIMPLE WITH NO_WAIT GO --收缩日志 ...
- SQL Server 2008 R2——统计各部门某年入职人数
=================================版权声明================================= 版权声明:原创文章 谢绝转载 请通过右侧公告中的“联系邮 ...
- SQL Server研究之统计信息—发现过期统计信息并处理具体解释
前言: 统计信息是关于谓词中的数据分布的主要信息源,假设不知道详细的数据分布,优化器不能获得预估的数据集.从而不能统计须要返回的数据. 在创建列的统计信息后,在DML操作如insert.upda ...
- SQL server 存储过程实现统计赋值
@EmptyCount int output 参数 declare @strCount nvarchar(max); 声明变量 取值语句: set @strCount='select @Count= ...
- SQL SERVER常用的统计用法
--查询各个状态下总数SET statistics time on Go SELECT END ) AS Q1, END ) AS Q2, END ) AS Q3, END ) AS Q4, END ...
- SQL Server 执行计划利用统计信息对数据行的预估原理以及SQL Server 2014中预估策略的改变
前提 本文仅讨论SQL Server查询时, 对于非复合统计信息,也即每个字段的统计信息只包含当前列的数据分布的情况下, 在用多个字段进行组合查询的时候,如何根据统计信息去预估行数的. 利用不同字段 ...
- SQL Server调优系列进阶篇(深入剖析统计信息)
前言 经过前几篇的分析,其实大体已经初窥到SQL Server统计信息的重要性了,所以本篇就要祭出这个神器了. 该篇内容会很长,坐好板凳,瓜子零食之类... 不废话,进正题 技术准备 数据库版本为SQ ...
随机推荐
- CICD详解之gitlab,Jenkins
持续集成概念 持续集成Continuous Integration 持续交付Continuous Delivery 持续部署Continuous Deployment 什么是持续集成: 持续集成是指开 ...
- rsync备份服务器部署详情
rsync -avz --bwlimit=1024M /data/wanxhe rsync_backup@10.x.x.38::backup/gpu007/data/ --password-fil ...
- wxdown 公众号离线文章保存(GO语言开发)
简介 本来一开始用 nodejs 写的,考虑大小.易操作.高性能.跨平台以及环境等问题,我就想能不能搞个不需依赖开发语言环境就能运行的.所以我就选择 go并且它本身就具备以上优点.作者本身是java开 ...
- Java 创建/识别条形码
项目刚好需要用到就记录一下 -- 依赖 <!-- 条形码生成 --><dependency> <groupId>net.sf.barcode4j</group ...
- C# 使用 运算符重载 隐式转换 对Point进行加减计算
运算符重载方便了我们对自定义类型(自定义的类或者结构体)的计算. 运算符重载关键字 operator. 除了这些运算符不支持:x.y.f(x).new.typeof.default.checked.u ...
- Android 12(S) Binder(三)
学以致用,这一节来native binder实战! android 12中的service用到的Bp.Bn文件多由aidl生成,所以实战中也用aidl来生成. 1.文件目录结构 文件目录结构如上,偷懒 ...
- .net core C# DataTable 和List之间相互转换的方法
一.List<T>/IEnumerable转换到DataTable/DataView 方法一: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 ...
- ABP邮件发送
ABP Vnext发邮件要使用AbpMailKitModule的实现IEmailSender,要检查添加了Volo.Abp.MailKit,其dependon 要添加typeof() 它使用Sett ...
- Windows 11提示“无法枚举容器中的对象。”
*为什么会出现这一错误提示?* 在Windows系统当中,对文件或文件夹的权限进行设置可以有效地保护隐私内容.登录管理员账户可以对权限进行更改,并且有权决定是否将内容共享给多个用户使用.但是在某些情况 ...
- Qt-ui的简单使用,常用控件(2)
1 简介 本文主要介绍Qt ui界面的简单使用,介绍一些常用的控件. 参考视频:https://www.bilibili.com/video/BV1XW411x7NU?p=22 2 常用控件 常用 ...