access分组计数查询

比如表1有5个字段,A、B、C、D、E表2有4个字段,A、B、C、D我想查询在两个表ABCD都相同的条件下,表1中E对应的甲、乙、丙、丁的个数。这种是要SQL视图写语句,... 比如表1有5个字段,A、B、C、D、E
表2有4个字段,A、B、C、D

我想查询在两个表ABCD都相同的条件下,表1中E对应的甲、乙、丙、丁的个数。

这种是要SQL视图写语句,还是可以直接用设计视图设置?
展开
 我来答
百无生
2015-06-25 · TA获得超过2214个赞
知道大有可为答主
回答量:2150
采纳率:80%
帮助的人:625万
展开全部

按我的第一种理解:以表2中ABCD四个字段为条件对表1中E字段计数

则查询可在设计视图中完成如下:

第2种理解:先以表2中ABCD四个字段为条件查出表1中对应记录,然后对E字段分类计数

则先做查询2,再基于查询2做查询3

效果如下:

追问

我想要的结果是这样的

应该是你第一种后,再进一步。


在excel里应该是这个方法:

=countifs(表1!A:A,表2!A1,表1!B:B,表2!B1,表1!C:C,表2!C1,表1D:D,表2D1,表1!E:E,"甲")

向下填充。

现在就是想用access找个和这个能得出相同结果的方法。

追答

可以用交叉表查询处理。但交叉表查询最多只允许3个行标题字段,所以先在查询1中添加一个联合了ABCD的计算字段,再用交叉表查询就可以了。如下:

查询1:SELECT 表2.A, 表2.B, 表2.C, 表2.D, [表2].[A] & "-" & [表2].[B] & "-" & [表2].[C] & "-" & [表2].[D] AS ABCD, 表1.E
FROM 表2 LEFT JOIN 表1 ON (表2.D = 表1.D) AND (表2.C = 表1.C) AND (表2.B = 表1.B) AND (表2.A = 表1.A);

然后基于查询1做交叉表查询:

效果如下:

来自:求助得到的回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式