---------------------------------------Author : liangCK 梁爱兰--Comment: 小梁 爱 兰儿--Date   : 2010-01-02 16:47:10---------------------------------------> 生成测试数据: #tbCREATETABLE#tb(列名1varchar(12),时间datetime)INSERTINTO#tbSELECT'03174190188','2009-11-01 07:17:39.217'UNIONALLSELECT'015224486575','2009-11-01 08:01:17.153'UNIONALLSELECT'013593006926','2009-11-12 08:04:46.560'UNIONALLSELECT'013599584239','2009-11-22 08:53:27.763'UNIONALLSELECT'013911693526','2009-11-23 08:53:51.683'UNIONALLSELECT'013846472440','2009-11-23 08:54:57.233'UNIONALLSELECT'013990353697','2009-11-24 08:55:25.077'UNIONALLSELECT'013990353697','2009-11-25 08:56:01.327'UNIONALLSELECT'013945594843','2009-11-26 08:57:02.233'UNIONALLSELECT'013990353697','2009-11-27 08:57:29.700'UNIONALLSELECT'013916597421','2009-11-28 08:59:49.390'UNIONALLSELECT'03916995857','2009-11-29 09:11:05.607'UNIONALLSELECT'015097712001','2009-11-30 09:13:50.293'--SQL查询如下:DECLARE@minDatedatetime,@maxDatedatetime;SELECT@minDate='2009-11-1',@maxDate='2009-12-01';selectconvert(char(10),dateadd(d,number,@minDate),120),sum(casewhenconvert(char(8),时间,108)between'00:00'and'01:00'then1else0end)as'00:00~01:00',sum(casewhenconvert(char(8),时间,108)between'01:00'and'02:00'then1else0end)as'01:00~02:00',sum(casewhenconvert(char(8),时间,108)between'02:00'and'03:00'then1else0end)as'02:00~03:00',sum(casewhenconvert(char(8),时间,108)between'03:00'and'04:00'then1else0end)as'03:00~04:00',sum(casewhenconvert(char(8),时间,108)between'04:00'and'05:00'then1else0end)as'04:00~05:00',sum(casewhenconvert(char(8),时间,108)between'05:00'and'06:00'then1else0end)as'05:00~06:00',sum(casewhenconvert(char(8),时间,108)between'06:00'and'07:00'then1else0end)as'06:00~07:00',sum(casewhenconvert(char(8),时间,108)between'07:00'and'08:00'then1else0end)as'07:00~08:00',sum(casewhenconvert(char(8),时间,108)between'08:00'and'09:00'then1else0end)as'08:00~09:00',count(a.列名1)as'sum'from#tb arightjoinmaster..spt_values bondatediff(d,时间,dateadd(d,number,@minDate))=0wheredateadd(d,number,@minDate)<=@maxDateandb.type='p'andb.number>=0groupbyconvert(char(10),dateadd(d,number,@minDate),120)orderby1droptable#tb(13行受影响)00:00~01:0001:00~02:0002:00~03:0003:00~04:0004:00~05:0005:00~06:0006:00~07:0007:00~08:0008:00~09:00sum---------- ----------- ----------- ----------- ----------- ----------- ----------- ----------- ----------- ----------- -----------2009-11-0100000001122009-11-0200000000002009-11-0300000000002009-11-0400000000002009-11-0500000000002009-11-0600000000002009-11-0700000000002009-11-0800000000002009-11-0900000000002009-11-1000000000002009-11-1100000000002009-11-1200000000112009-11-1300000000002009-11-1400000000002009-11-1500000000002009-11-1600000000002009-11-1700000000002009-11-1800000000002009-11-1900000000002009-11-2000000000002009-11-2100000000002009-11-2200000000112009-11-2300000000222009-11-2400000000112009-11-2500000000112009-11-2600000000112009-11-2700000000112009-11-2800000000112009-11-2900000000012009-11-3000000000012009-12-010000000000警告: 聚合或其他SET操作消除了空值。(31行受影响)

---------------------------------------Author : liangCK 梁爱兰--Comment: 小梁 爱 兰儿--Date   : 2010-01-02 16:47:10---------------------------------------> 生成测试数据: #tbCREATETABLE#tb(列名1varchar(12),时间datetime)INSERTINTO#tbSELECT'03174190188','2009-11-01 07:17:39.217'UNIONALLSELECT'015224486575','2009-11-01 08:01:17.153'UNIONALLSELECT'013593006926','2009-11-12 08:04:46.560'UNIONALLSELECT'013599584239','2009-11-22 08:53:27.763'UNIONALLSELECT'013911693526','2009-11-23 08:53:51.683'UNIONALLSELECT'013846472440','2009-11-23 08:54:57.233'UNIONALLSELECT'013990353697','2009-11-24 08:55:25.077'UNIONALLSELECT'013990353697','2009-11-25 08:56:01.327'UNIONALLSELECT'013945594843','2009-11-26 08:57:02.233'UNIONALLSELECT'013990353697','2009-11-27 08:57:29.700'UNIONALLSELECT'013916597421','2009-11-28 08:59:49.390'UNIONALLSELECT'03916995857','2009-11-29 09:11:05.607'UNIONALLSELECT'015097712001','2009-11-30 09:13:50.293'--SQL查询如下:DECLARE@minDatedatetime,@maxDatedatetime;SELECT@minDate='2009-11-1',@maxDate='2009-12-01';selectisnull(convert(char(10),dateadd(d,number,@minDate),120),'sum'),sum(casewhenconvert(char(8),时间,108)between'00:00'and'01:00'then1else0end)as'00:00~01:00',sum(casewhenconvert(char(8),时间,108)between'01:00'and'02:00'then1else0end)as'01:00~02:00',sum(casewhenconvert(char(8),时间,108)between'02:00'and'03:00'then1else0end)as'02:00~03:00',sum(casewhenconvert(char(8),时间,108)between'03:00'and'04:00'then1else0end)as'03:00~04:00',sum(casewhenconvert(char(8),时间,108)between'04:00'and'05:00'then1else0end)as'04:00~05:00',sum(casewhenconvert(char(8),时间,108)between'05:00'and'06:00'then1else0end)as'05:00~06:00',sum(casewhenconvert(char(8),时间,108)between'06:00'and'07:00'then1else0end)as'06:00~07:00',sum(casewhenconvert(char(8),时间,108)between'07:00'and'08:00'then1else0end)as'07:00~08:00',sum(casewhenconvert(char(8),时间,108)between'08:00'and'09:00'then1else0end)as'08:00~09:00',count(a.列名1)as'sum'from#tb arightjoinmaster..spt_values bondatediff(d,时间,dateadd(d,number,@minDate))=0wheredateadd(d,number,@minDate)<=@maxDateandb.type='p'andb.number>=0groupbyconvert(char(10),dateadd(d,number,@minDate),120)withrolluporderby1droptable#tb00:00~01:0001:00~02:0002:00~03:0003:00~04:0004:00~05:0005:00~06:0006:00~07:0007:00~08:0008:00~09:00sum---------- ----------- ----------- ----------- ----------- ----------- ----------- ----------- ----------- ----------- -----------2009-11-0100000001122009-11-0200000000002009-11-0300000000002009-11-0400000000002009-11-050000000000......2009-11-2800000000112009-11-2900000000012009-11-3000000000012009-12-010000000000sum000000011013(32行受影响)

php按时间分组的sql语句,(SQL语句)按指定时间段分组统计相关推荐

  1. (SQL语句)按指定时间段分组统计

    我现在有一张表:   列名1                时间 03174190188 2009-11-01 07:17:39.217 015224486575 2009-11-01 08:01:1 ...

  2. serverl列求和 sql_分组后分组合计以及总计SQL语句--收集未整理

    分组后分组合计以及总计SQL语句 1)想一次性得到分组合计以及总计,sql: SELECT分组字段FROM表 GROUP BY分组字段 compute sum(COUNT(*)) ===== 2)分组 ...

  3. mysql 日期减10分钟_获取当前时间减去10分钟的话SQL语句怎么写

    获取当前时间减去10分钟的话SQL语句怎么写 Mysql日期和时间函数不求人 本文出自:http://linuxdb.yeah.net 作者: 晏子 (2001-07-05 15:00:00) 对于每 ...

  4. 如何通过数据库SQL Server 2014中的SQL日期格式化语句来转换出我们需要的日期格式化日期时间格式转换的教程方法

    如何通过数据库SQL Server 2014中的SQL日期格式化语句来转换出我们需要的日期格式化日期时间格式转换的教程方法 作者:张国军_Suger 开发工具与关键技术:SQL Server 2014 ...

  5. SQL查询语句分步详解——多字段分组查询

    多字段分组规则: 1.多字段分组时,分组字段出现顺序对于最终查询结果没有任何影响的. group by deptno,job 与 group by job,deptno查询最终结果是一致的 2.多字段 ...

  6. 6.SQL Server Sql语句

    1.Select  查询 select  *  from  users                                                                 ...

  7. mysql筛选字符个数为8的_听说Mysql你很豪横?-------------分分钟带你玩转SQL高级查询语句(常用查询,正则表达式,运算符)...

    一 . 常用查询介绍 1.创建表结构并插入内容 创建一个表 里面有id 毕业院校 家庭住址 name mysql> create table gou(id int primary key,sch ...

  8. mysql sql select_mysql SQL Select 语句 简单应用

    一.SQL 简介 1. 什么是 SQL? SQL 指结构化查询语言 SQL 使我们有能力访问数据库 SQL 是一种 ANSI 的标准计算机语言 2. SQL 能做什么? SQL 面向数据库执行查询 S ...

  9. sql查询出的字段切割_SPL 简化 SQL 案例详解:多层固定分组

    在数据库应用开发中,我们经常需要面对各种复杂的SQL计算,多层固定分组就是其中一种.实现该算法的思路是用left join语句将源数据按照固定的依据对齐,但由于该算法往往涉及分组汇总.行间计算.填补缺 ...

最新文章

  1. pandas使用方括号[]或者loc函数、基于列名称或者列名称列表索引dataframe中的单个数据列或者多个数据列(accessing columns of a dataframe)
  2. WindowManager如何被Android深度解析(2)
  3. 吴恩达《卷积神经网络》精炼笔记(3)-- 目标检测
  4. bash的环境配置文件
  5. 对于多对多关系的对象,如何建表与关联查询(转载)
  6. mysql跨进程锁_python基于mysql实现的简单队列以及跨进程锁
  7. 图像处理中腐蚀与膨胀的原理
  8. python波峰波谷算法_波动均分算法
  9. 学生电脑哪个牌子好_电脑桌哪个牌子好?如何选购电脑桌?2020年值得选购的电脑桌品牌推荐...
  10. 如何用研发流程搞垮一个团队?
  11. 保存时自动加分号_作为测试行业发展趋势,自动化一点也不难啊!
  12. ejs 基础语法教程
  13. solrcloud和zookeeper的搭建、使用、心得、教训
  14. Kafka 设计与原理详解(二)
  15. 颠覆QQ,干掉微信?腾讯内测“朋友”,会是下一个国民社交APP吗
  16. 【转】推荐下载使用:功能强大的光盘刻录软件NERO 9.0中文版(最新官方原版+有效序列号)...
  17. 电脑无法正常开机,黑屏,只显示鼠标。
  18. Java基础 - 网络编程 - netstat指令,UDP通信编程和网络编程总练习
  19. PHPWAMP开启SSL,PHPWAMP配置ssl证书
  20. android应用流程图,Android APP 启动流程简析

热门文章

  1. .NET Core2使用Azure云上的Iot-Hub服务
  2. 终于明白了 C# 中 Task.Yield 的用途
  3. COMCMS_CORE 起步篇,如何运行和部署
  4. 使用C# (.NET Core) 实现命令设计模式 (Command Pattern)
  5. DDD理论学习系列(11)-- 工厂
  6. Postgresql快速写入\/读取大量数据(.net)
  7. 服务的协作:服务间的消息传递——《微服务设计》读书笔记
  8. 老司机实战Windows Server Docker:3 单节点Windows Docker服务器简单运维(上)
  9. Consul 服务注册与服务发现
  10. LeetCode之Keyboard Row