我有一个查询,它给了我以下结果
FILE EVENT AMOUNT
File1 AP 26.96
File1 AP 26.96
File1 AP 26.96
Run Code Online (Sandbox Code Playgroud)
关于如何将结果分组2以便我可以拥有的任何想法
FILE EVENT AMOUNT
File1 AP 26.96
File1 AP 26.96
Run Code Online (Sandbox Code Playgroud)
如果我的原始查询返回4个结果,
FILE EVENT AMOUNT
File1 AP 26.96
File1 AP 26.96
File1 AP 26.96
File1 AP 26.96
Run Code Online (Sandbox Code Playgroud)
我想拥有
FILE EVENT AMOUNT
File1 AP 26.96
File1 AP 26.96
Run Code Online (Sandbox Code Playgroud)
执行上述操作的任何SQL关键字?
谢谢
如果你想返回2行,那么我会看一下使用类似的窗口函数row_number().您可以对3列上的数据进行分区,然后将其过滤为仅返回2行:
select [file], [event], [amount]
from
(
select [file], [event], [amount],
rn = row_number() over(partition by [file], [event], [amount]
order by [file])
from dbo.yourtable
) d
where rn <= 2;
Run Code Online (Sandbox Code Playgroud)