MySQL - 将行分组为 4
我有一个像这样的产品表:
Product name , Affiliate ID , ProductCode
a, 1, 1
b, 1, 2
c, 1, 3
d, 1, 5
e, 1, 7
f, 2, 4
g, 2, 6
我想从每个联盟 ID 返回前四个产品。 “ProductCode”列表示添加产品的顺序,因此我可以使用此列对结果进行排序。但我不知道如何返回每个联盟 ID 的前四个结果?如果我使用“组”函数,它仅返回每个联属 ID 的一行。
I have a product table like this:
Product name , Affiliate ID , ProductCode
a, 1, 1
b, 1, 2
c, 1, 3
d, 1, 5
e, 1, 7
f, 2, 4
g, 2, 6
I want to return first four products from each Affiliate ID. The 'ProductCode' column signifies the order in which the products were added, so can I use this column to sort my results. But I don't know how to return the first four results from each Affiliate ID? If I use the 'group' function it returns only one row of each affiliate ID.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
查看此链接中的示例:
组内配额(顶部每组 N)
这正是您所需要的。
Look to the example in this link:
Within-group quotas (Top N per group)
it is exactly that you need.