设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 2312|回复: 13
打印 上一主题 下一主题

[Access本身] 请教进行数据统计功能

[复制链接]
跳转到指定楼层
1#
发表于 2016-1-13 14:26:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
初识Access数据库,感觉其功能的异常强大,特来向各位前辈请教一个问题:举例如下:
1
4
4
8
1
1
2
6
7
5
1
1
1
9
10
我想做一个这样的功能:将上述数据中连续出现的情况做一个统计,如上述连续出现2次“4”的情况1次,连续出现2次“1”的情况1次,连续出现3次“1”的情况1次。
请问这样的算法应该如何实现?
      
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
推荐
发表于 2016-1-13 15:18:48 | 只看该作者
是来消遣我们的?
回复 支持 1 反对 0

使用道具 举报

2#
发表于 2016-1-13 15:00:05 | 只看该作者
分组查询里有个Count聚合函数:

大概是这样。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
3#
 楼主| 发表于 2016-1-13 15:07:26 | 只看该作者
我提出的是统计连续出现的次数 而您这个查询是把所有数据的出现情况统计了一次, 对吧
4#
 楼主| 发表于 2016-1-13 15:07:56 | 只看该作者
我刚刚试了试,如果使用这个函数就把所有出现1的情况列出来了
5#
 楼主| 发表于 2016-1-13 15:08:17 | 只看该作者
roych 发表于 2016-1-13 15:00
分组查询里有个Count聚合函数:

大概是这样。

我提出的是统计连续出现的次数 而您这个查询是把所有数据的出现情况统计了一次, 对吧
7#
 楼主| 发表于 2016-1-13 15:22:06 | 只看该作者

真心不是.........您稍微看一下我提的问题,我想学习这个强大的数据库啊
8#
发表于 2016-1-13 15:24:50 | 只看该作者
看过了,强大是相对的
9#
发表于 2016-1-13 15:28:56 | 只看该作者
你的问题没有看出边界,如数字可以有无限多个,你要统计重复1次,2次,n次,.........
冒昧问句:做什么用的?
10#
发表于 2016-1-13 15:30:09 | 只看该作者
本帖最后由 roych 于 2016-1-14 12:07 编辑

我也觉得是这样。不如用Excel吧。
ADO可以,不过代码比较复杂。详见以下代码及附件。这里不再一一解释了。大体是先定义两个变量,一个用于存储字段的值(lngID),另一个用于存储计数的值(j)。当记录集的值与lngID相同的时候,j+1;否则j为1(即重新计数),并将记录集的值赋予lngID,这样的话就可以保证每个lngID都是与上一个记录集的值相比较了。
  1. Sub test()
  2.     Dim rst As New ADODB.Recordset
  3.     Dim lngID As Long
  4.     Dim j As Long
  5.    
  6.     rst.Open "test", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
  7.     lngID = 0
  8.     j = 0
  9.     Do Until rst.EOF
  10.         If rst(0) = lngID Then
  11.             rst(1) = j + 1
  12.         Else
  13.             rst(1) = 1
  14.             
  15.         End If
  16.         lngID = rst(0)
  17.         j = rst(1)
  18.         rst.MoveNext
  19.     Loop
  20.     rst.UpdateBatch
  21.     rst.Close
  22. End Sub
复制代码


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-28 23:11 , Processed in 0.096359 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表