首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MS 2013:在每个国家销售前10种产品

MS 2013:在每个国家销售前10种产品
EN

Stack Overflow用户
提问于 2020-04-27 19:30:13
回答 1查看 86关注 0票数 0

我需要写一个查询,以获得在每个国家销售的前10件商品。

数据库类型为MS Access 2013

表名: SoldItems字段国家项目

查询

此查询将得到每个国家销售的所有商品按每个国家销售的商品数量降序,我只需要在每个国家销售的前10件商品。

按国家、项目从SoldItems组中选择count(*)作为SoldItems、Country、Item

第2,1条命令c

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-28 08:16:40

您将需要使用一个子查询,该查询返回按国家分组的前10项,并将其用作筛选器的基础。类似于:

代码语言:javascript
复制
SELECT S.Country, S.Item, COUNT(S.Item) AS CountOfItem
FROM SoldItems AS S
GROUP BY S.Country, S.Item
HAVING S.Item In (SELECT TOP 10 R.Item
    FROM SoldItems AS R
    GROUP BY R.Country, R.Item
    HAVING R.Country=S.Country
    ORDER BY COUNT(R.Item) DESC
)
ORDER BY S.Country, COUNT(S.Item) DESC;

请注意,如果有相同数量的项目出售,那么您将得到超过10个记录返回每个国家。

致以敬意,

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61466897

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档