对不起,如果这是一个基本的问题。SQL计数查询
基本上,我有一个表,如下所示,下面是一个基本的样本
store-ProdCode-result
13p I10x 5
13p I20x 7
13p I30x 8
14a K38z 23
17a K38z 23
我的数据集有近10万条记录。
我想要做的是,为每个商店找到前10名prodCode。
我不确定如何做到这一点,但我的尝试是:
select s_code as store, prod_code,count (prod_code)
from top10_secondary
where prod_code is not null
group by store,prod_code
order by count(prod_code) desc limit 10
这是给我完全不同的东西,我对我如何去实现我的最终结果不确定。
所有帮助表示赞赏。
由于
预期的输出应为:对于每个商店(s_code)显示顶层10 prodcode
这样:
store--prodcode--result
1a abc 5
1a abd 4
2a dgf 1
2a ldk 6
(10次,直到下一个商店代码)
预期输出应该是? –
我的直觉告诉我建议查看PIVOT函数(取决于您使用的SQL的版本),但如上所述,预期的输出会很有用。 –
@juergend我编辑了我的文章与预期的结果 – timz