如何在access的一个表中选出一个列中出现次数最多的·条目然后group by 该表中的另一列

如图如何选出每个CardID中出现次数最多的ProductID... 如图如何选出每个CardID中出现次数最多的ProductID 展开
 我来答
cqwzdxd
2016-12-17 · TA获得超过130个赞
知道小有建树答主
回答量:80
采纳率:100%
帮助的人:34.8万
展开全部
如果是我
需要的工具原料,ACCESS软件
1、做一个记数 Count(Total.CardID),按一列CardID分组查询。名为查询1。
SELECT Count([Total].[CardID]) AS 计数, [Total].[CardID]
FROM Total
GROUP BY [Total].[CardID];
2、在记数查询的基础上做一个最大数Max查询。名了查询2。
SELECT Max(查询1.计数) AS 计数之最大值
FROM 查询1;
3、将查询2的计数和查询1中的计算做关联,把把查询1中的另一字段和表中相同字段做关联,在此基础上做一个新查询。
SELECT Total.ProductID, 查询1.CardID
FROM (查询2 INNER JOIN 查询1 ON 查询2.计数之最大值 = 查询1.计数) INNER JOIN Total ON 查询1.[CardID] = Total.[CardID]
GROUP BY Total.ProductID, 查询1.CardID;
我想应该还有其它办法。
思路就是先计数,再得到最大值,最大值和计数查询中的值关联,再关联到数据表,得出结果。
注意事项:三个查询之间的关系。一定是最大数查询在前,计数查询在中,数据表查询在后。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式