一个统计报表sql问题
今天朋友问我了一个统计报表的sql问题。我弄了好久。终于算是写出来了。这里记录下。
问题:
1 a 2014-01-01 02:30:21
1 b 2014-01-03 03:20:02
1 c 2014-01-03 06:10:30
1 d 2014-01-06 11:30:15
1 e 2014-01-06 11:10:18
1 f 2014-01-06 12:30:19
想要达到查询结果:
addtime---------------count
2014-01-01 1
2014-01-02 0
2014-01-03 2
2014-01-04 0
2014-01-05 0
2014-01-06 3


--删除临时表
DROP TABLE #tempDate
--创建临时表
CREATE TABLE #tempDate(CreateTime DATETIME)
--设置起始时间
DECLARE @startTime DATETIME
DECLARE @endTime DATETIME
SET @startTime='2015-3-10'
SET @endTime='2015-4-28'
--生成日期数据
WHILE @startTime<@endTime
BEGIN
INSERT INTO #tempDate
( CreateTime )
VALUES ( CAST(DATEPART(yy,@startTime) AS NVARCHAR(13))+'-'+
CAST(DATEPART(mm,@startTime) AS NVARCHAR(13))+'-'+
CAST(DATEPART(dd,@startTime) AS NVARCHAR(13)) -- CreateTime - datetime
)
SET @startTime=DATEADD(dd,1,@startTime)
CONTINUE
END --查询统计结果
SELECT #tempDate.CreateTime,COUNT(b.CreateTime) SumCount FROM #tempDate LEFT JOIN
TestTable1
b
ON (CAST(DATEPART(yy,#tempDate.CreateTime) AS NVARCHAR(13))+'-'+
CAST(DATEPART(mm,#tempDate.CreateTime) AS NVARCHAR(13))+'-'+
CAST(DATEPART(dd,#tempDate.CreateTime) AS NVARCHAR(13))) = (CAST(DATEPART(yy,b.CreateTime) AS NVARCHAR(13))+'-'+
CAST(DATEPART(mm,b.CreateTime) AS NVARCHAR(13))+'-'+
CAST(DATEPART(dd,b.CreateTime) AS NVARCHAR(13)))
一个统计报表sql问题的更多相关文章
- sql月,年,统计报表sql报表
select DevName as 设备名称, count(flux) as 流量数据个数, max(flux) as 流量最大值, min(flux) as 流量最小值, avg(flux) as ...
- 用SQL实现统计报表中的"小计"与"合计"的方法详解
本篇文章是对使用SQL实现统计报表中的"小计"与"合计"的方法进行了详细的分析介绍,需要的朋友参考下 客户提出需求,针对某一列分组加上小计,合计汇总.网上找 ...
- 用SQL实现统计报表中的“小计”和“合计”
问题: 开发一个关于各烟叶等级的二次验级的原发件数.原发重量及验收重量的统计报表.其中,原发件数.原发重量和验收重量等列要求计算出各等级组别的小计和所有记录的合计. 语句: SELECT DECODE ...
- ASP.NET MVC搭建项目后台UI框架—7、统计报表
ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NET M ...
- 数据库整合数据报表SQL实战
协助同事整理sql统计报表. ---建立由avalue的视图,要过滤重复数据 CREATE VIEW vLectAnswerRecord as SELECT t2.OpenID,t2.Qguid,t1 ...
- statpot:使用mongo+bootstrap+highcharts做统计报表
最近做了一个统计项目,这个统计项目大致的需求是统计接口的访问速度.客户端会调用一个接口来记录接口的访问情况,我的需求就需要分析这些数据,然后做出个统计报表. 需求实现 最初的时候想着每天把这些接口访问 ...
- mysql统计类似SQL语句查询次数
mysql统计类似SQL语句查询次数 vc-mysql-sniffer 工具抓取的sql分析. 1.先用shell脚本把所有enter符号替换为null,再根据语句前后的字符分隔语句 grep -Ev ...
- 考勤输入导入OA平台与考勤统计报表导出功能源代码
注:以某某公司为例,每日签到时间为8点整 每日签退时间为17点30分 规则:公司签到签退时间在OA平台中可以视实际情况调整,当天有请假并通过工作流审批通过为有效,当天因公外出并通过工作流审批通过为 ...
- 用Synoptic Panel自定义基于图形的可视化控件--制作一张剧场售票统计报表
数据可视化的一大特点就是能给报表使用者带来感官上的享受.不再是枯燥的数字,而变成一个一个亮丽的图形.之前业界大神公布过一个统计Car Accidents的报表,这个Power BI Report的特点 ...
随机推荐
- TFS 2012 在IE11和Chrome (Windows 8.1) 显示英文的解决方案
1.如果使用IE11浏览TFS Web显示英文,请执行以下操作: 控制面板——>语言——>高级设置 将“替代Windows显示语言”改为“中文(中华人民共和国)”,同时勾选“Web语言”下 ...
- 正则表达式匹配a标签的href
JS代码: <html> <head> <script language="javascript"> var a='<P><A ...
- ASP.NET Core开发-MVC 使用dotnet 命令创建Controller和View
使用dotnet 命令在ASP.NET Core MVC 中创建Controller和View,之前讲解过使用yo 来创建Controller和View. 下面来了解dotnet 命令来创建Contr ...
- WinPhone学习笔记(三)——WinPhone的动画
这段时间又一直赶任务,结果没有去学习,也没有去写博文,这个动画的内容很早就学了,但是一直没把它整理成博文,现在终于有空就弄一下. 开始先讲讲在WinPhone中做动画有两种动画类型,一种是基于帧动画另 ...
- 孙鑫MFC学习笔记17:进程间通信
17 1.进程间通信4种方式 2.OpenClipboard打开剪贴板 3.EmptyClipboard清空剪贴板,并把所有权分配给打开剪贴板的窗口 4.SetClipboardData设置剪贴板数据 ...
- Netbeans 8.2将支持PHP 7
首先,将PHP项目的PHP版本设置为PHP 7.0. PHP 7其中一项新特性是返回类型声明,即PHP的函数和方法可以声明指定类型的返回值: PHP 7的另一项精彩的改进就是参数的标量类型声明,Net ...
- PHP程序员7小时学会Kotlin系列
这是我尝试给自己一个目标去学会一门新语言的方法.正在创作中,敬请期待! 提纲 第一小时 概念 第二小时 基础 第三小时 函数 第四小时 类与对象 第五小时 类与对象二 第六小时 DSL 第七小时 工程 ...
- win系统盘下面安装RedHat Linux6.2ES
安装中的流程和问题 1.安装准备 硬盘分区 下载rhel-server-6.2-i386-dvd.iso 接下来就是一些安装过程 2.安装教程有很多,可以结合参考: http://www.dedecm ...
- object references an unsaved transient instance - save the transient instance before flushing错误
异常1:not-null property references a null or transient value解决方法:将“一对多”关系中的“一”方,not-null设置为false(参考资料: ...
- EL表达式错误attribute items does not accept any expressions
解决方法是将 <%@taglib prefix="c" uri="http://java.sun.com/jstl/core"%> 改成 <% ...