答案 0 :(得分:0)
尝试一下。将MyTable
替换为您的表名。该查询将返回前2个。由于您没有提到要返回前N个记录的顺序,因此我使用了GROUP_Row_ID
进行排序。您可以根据需要进行更改。
DECLARE @n INT = 2;
SELECT *
FROM ( SELECT * ,
ROW_NUMBER() OVER ( PARTITION BY AlternativeId
ORDER BY GROUP_Row_ID ) AS rn
FROM MyTable ) t
WHERE t.rn <= @n;