分段数据查询问题,求助大侠
时间:2011-03-12
来源:互联网
数据库中有一张表,我想用查询一次得到结果。
但是查询命令不会写,请各位大侠不吝赐教!
具体表请见附件。
表结构.rar(1.99 KB)
但是查询命令不会写,请各位大侠不吝赐教!
具体表请见附件。
附件

2011-3-12 06:54, 下载次数: 9
表结构
作者: lw040920 发布时间: 2011-03-12
如果仅仅求次数可以试试这个公式:H4=SUMPRODUCT((HOUR($B$4:$B$27)=--MID(F4,6,FIND(":",F4)-6))*($C$4:$C$27=G4))
作者: 安然祥和 发布时间: 2011-03-12
Access
SELECT HOUR(时间) AS 时间段, 金额, Count(金额) AS 次数
FROM 表1 GROUP BY HOUR(时间), 金额
MS SQL
-- 插入数据
DECLARE @temp TABLE (序号 char(3), 时间 datetime, 金额 money)
INSERT @temp VALUES('001','2011-3-10 6:00',2)
INSERT @temp VALUES('002','2011-3-10 6:01',2)
INSERT @temp VALUES('003','2011-3-10 6:02',3)
INSERT @temp VALUES('004','2011-3-10 6:03',3)
INSERT @temp VALUES('005','2011-3-10 6:04',2)
INSERT @temp VALUES('006','2011-3-10 6:05',3)
INSERT @temp VALUES('007','2011-3-10 6:05',2)
INSERT @temp VALUES('008','2011-3-10 6:06',3)
INSERT @temp VALUES('009','2011-3-10 9:00',5)
INSERT @temp VALUES('010','2011-3-10 9:01',5)
INSERT @temp VALUES('011','2011-3-10 9:01',5)
INSERT @temp VALUES('012','2011-3-10 9:01',6)
INSERT @temp VALUES('013','2011-3-10 9:02',5)
INSERT @temp VALUES('014','2011-3-10 9:02',5)
INSERT @temp VALUES('015','2011-3-10 9:02',5)
INSERT @temp VALUES('016','2011-3-10 9:02',6)
INSERT @temp VALUES('017','2011-3-10 9:03',5)
INSERT @temp VALUES('018','2011-3-10 9:03',5)
INSERT @temp VALUES('019','2011-3-10 20:02',5)
INSERT @temp VALUES('020','2011-3-10 20:02',7)
INSERT @temp VALUES('021','2011-3-10 20:02',5)
INSERT @temp VALUES('022','2011-3-10 20:02',7)
INSERT @temp VALUES('023','2011-3-10 20:03',5)
INSERT @temp VALUES('024','2011-3-10 20:03',5)
-- 视图
SELECT DatePart(hh,时间) 时间段, 金额, Count(金额) 次数
FROM @temp GROUP BY DatePart(hh,时间), 金额 ORDER BY 1, 2
-- 返回结果
时间段 金额 次数
----------- --------------------- -----------
6 2.00 4
6 3.00 4
9 5.00 8
9 6.00 2
20 5.00 4
20 7.00 2
[ 本帖最后由 styhs 于 2011-3-12 10:02 编辑 ]
SELECT HOUR(时间) AS 时间段, 金额, Count(金额) AS 次数
FROM 表1 GROUP BY HOUR(时间), 金额
MS SQL
-- 插入数据
DECLARE @temp TABLE (序号 char(3), 时间 datetime, 金额 money)
INSERT @temp VALUES('001','2011-3-10 6:00',2)
INSERT @temp VALUES('002','2011-3-10 6:01',2)
INSERT @temp VALUES('003','2011-3-10 6:02',3)
INSERT @temp VALUES('004','2011-3-10 6:03',3)
INSERT @temp VALUES('005','2011-3-10 6:04',2)
INSERT @temp VALUES('006','2011-3-10 6:05',3)
INSERT @temp VALUES('007','2011-3-10 6:05',2)
INSERT @temp VALUES('008','2011-3-10 6:06',3)
INSERT @temp VALUES('009','2011-3-10 9:00',5)
INSERT @temp VALUES('010','2011-3-10 9:01',5)
INSERT @temp VALUES('011','2011-3-10 9:01',5)
INSERT @temp VALUES('012','2011-3-10 9:01',6)
INSERT @temp VALUES('013','2011-3-10 9:02',5)
INSERT @temp VALUES('014','2011-3-10 9:02',5)
INSERT @temp VALUES('015','2011-3-10 9:02',5)
INSERT @temp VALUES('016','2011-3-10 9:02',6)
INSERT @temp VALUES('017','2011-3-10 9:03',5)
INSERT @temp VALUES('018','2011-3-10 9:03',5)
INSERT @temp VALUES('019','2011-3-10 20:02',5)
INSERT @temp VALUES('020','2011-3-10 20:02',7)
INSERT @temp VALUES('021','2011-3-10 20:02',5)
INSERT @temp VALUES('022','2011-3-10 20:02',7)
INSERT @temp VALUES('023','2011-3-10 20:03',5)
INSERT @temp VALUES('024','2011-3-10 20:03',5)
-- 视图
SELECT DatePart(hh,时间) 时间段, 金额, Count(金额) 次数
FROM @temp GROUP BY DatePart(hh,时间), 金额 ORDER BY 1, 2
-- 返回结果
时间段 金额 次数
----------- --------------------- -----------
6 2.00 4
6 3.00 4
9 5.00 8
9 6.00 2
20 5.00 4
20 7.00 2
[ 本帖最后由 styhs 于 2011-3-12 10:02 编辑 ]
作者: styhs 发布时间: 2011-03-12
如果把金额列根据时间段用公式自动生成分类,有时间我再想想该怎写
作者: 安然祥和 发布时间: 2011-03-12
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28