设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[查询] 查询一年内总数超三次的记录

[复制链接]
跳转到指定楼层
1#
发表于 2007-8-4 10:00:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如图所示

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2007-8-4 10:23:29 | 只看该作者

回复例子

回复例子^^^^^^^^^^^^^^^^^^^^

本帖子中包含更多资源

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

x

点击这里给我发消息

3#
发表于 2007-8-4 10:23:56 | 只看该作者

按年和代码分组查询

如下:
SELECT First(表1.工号) AS 工号, First(表1.日期) AS 一年开始的日期, 表1.失误代码, Count(表1.失误代码) AS 失误的总数
FROM 表1
GROUP BY 表1.失误代码, Year([日期])
HAVING (((Count(表1.失误代码))>2));
4#
 楼主| 发表于 2007-8-4 10:37:15 | 只看该作者
两位的思路也不错了,但是如果用year()函数似乎不行,因为这样只能以年来组合,跟我的原意不符,不知还有没有其他方法?

点击这里给我发消息

5#
发表于 2007-8-4 10:44:40 | 只看该作者
原来那个'一年'不是某一年,而是一年的时间,看来要用到VBA才能解决
6#
 楼主| 发表于 2007-8-4 10:50:35 | 只看该作者
呵呵呵,用VBA也可以啊,但怎么做呢?我原本想的是用SQL会更容易些哈
7#
发表于 2007-8-4 11:07:52 | 只看该作者
要指定年份阿,那就把查询改一下,用下面的,可以不用VBA,视个人喜好而定

SELECT DISTINCTROW 表1.工号, Format$([日期],'yyyy') AS 年份, 表1.失误代码, Count(表1.失误代码) AS 失误代码之计数
FROM 表1
WHERE ((([年份]) Like "????"))
GROUP BY 表1.工号, Format$([日期],'yyyy'), 表1.失误代码
HAVING (((Format$([日期],'yyyy'))=[年份]) AND ((Count(表1.失误代码))>2));

[ 本帖最后由 fannky 于 2007-8-4 11:16 编辑 ]

本帖子中包含更多资源

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

x
8#
 楼主| 发表于 2007-8-4 11:27:31 | 只看该作者
fannky 太热心了,谢谢。也不是指定年份了。如我的例子中2001-2-11到2002-2-11或者从2002-7-1到2003-7-1中这两年(实际中肯定不止这两年了)有条件的筛选哈
9#
发表于 2007-8-4 11:36:27 | 只看该作者
原帖由 andrewzeng 于 2007-8-4 11:27 发表
fannky 太热心了,谢谢。也不是指定年份了。如我的例子中2001-2-11到2002-2-11或者从2002-7-1到2003-7-1中这两年(实际中肯定不止这两年了)有条件的筛选哈

VBA
Over
10#
 楼主| 发表于 2007-8-4 22:33:28 | 只看该作者
那如果用VBA又怎么编呢
over
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-15 01:30 , Processed in 0.088296 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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