SQL查询SQL SSRS
嗨,谁能帮我把表中的前两行加起来,然后剩下的都一样。例如SQL查询SQL SSRS,sql,sql-server,Sql,Sql Server,嗨,谁能帮我把表中的前两行加起来,然后剩下的都一样。例如 ID SUM 12 60 0 20 1 30 2 50 3 60 我期待着 ID SUM 0 80 1 30 2 50 3 60 我是根据记忆来做这件事的——所以如果这不起作用,请让我知道,我们可以用另一种方式查看行号 假设你有一个唯一的ID按照你的建议进行排序,你可以这样做 如果这是您对“前2名”的分类方式,您可能希望将顺序更改为desc SELECT TOP 2 ID, SUM(VALUE)
ID SUM
12 60
0 20
1 30
2 50
3 60
我期待着
ID SUM
0 80
1 30
2 50
3 60
我是根据记忆来做这件事的——所以如果这不起作用,请让我知道,我们可以用另一种方式查看行号 假设你有一个唯一的ID按照你的建议进行排序,你可以这样做 如果这是您对“前2名”的分类方式,您可能希望将顺序更改为desc
SELECT TOP 2 ID,
SUM(VALUE)
FROM [Table]
GROUP BY ID
ORDER BY ID
UNION
SELECT ID,
VALUE
FROM [Table]
WHERE ID NOT IN (SELECT TOP 2 ID
FROM [Table] ORDER BY ID)
表中没有“前两行”这样的东西。关系表中的行没有排序顺序,除非您可以通过定义该顺序的
order-by
,但我在您的输出中找不到任何列可以像您所期望的那样定义“前两行”。那么,应该使用哪一列对结果进行排序,以便获得定义的排序顺序?是什么规定了该表的顺序?我可以在该临时表中添加另一个ID列,如“ID int IDENTITY(1,1)PRIMARY KEY”感谢James,我对此做了一些修改。这对我很有用