我需要一个查询来从 StackExchange 数据集获取结果,以这样的方式返回 100 个顶级信誉用户,每个用户的帖子(帖子正文)不超过 3 个。表格是这样的:
用户:(id,信誉)帖子:(id,OwnerUserId,body)
我写了以下查询:
SELECT top 100
ROW_NUMBER() OVER(ORDER BY u.Reputation DESC) AS rank,
u.Id AS [User Link], u. Reputation, p.Body
from
Users u
inner join Posts p on p.OwnerUserId = u.Id
ORDER BY
u.Reputation DESC
它返回每个用户的所有帖子,但我想要的是每个用户只获得 3 个帖子(正文)。请帮忙!