Asp.net 如何在SQL Server数据库中选择最后8行并求和其他列

Asp.net 如何在SQL Server数据库中选择最后8行并求和其他列,asp.net,sql,sql-server,vb.net,Asp.net,Sql,Sql Server,Vb.net,我是新手。请帮我解决这个问题。 我想从数据库中选择最后8行和其他列。 我有列week、date和value1。 我想每周汇总一组值,只显示最后8条记录。我可以显示最近8周的数据,但无法对值1求和。 以下是显示本周的代码: SELECT week FROM (SELECT Top 7 week FROM tbData Group By week ORDER BY week DESC) as LW ORDER BY week ASC 它给我最后8周的时间,然后我将其更改为显示总和(

我是新手。请帮我解决这个问题。 我想从数据库中选择最后8行和其他列。 我有列week、date和value1。 我想每周汇总一组值,只显示最后8条记录。我可以显示最近8周的数据,但无法对值1求和。 以下是显示本周的代码:

SELECT week FROM 
(SELECT Top 7 week 
 FROM tbData 
 Group By week 
 ORDER BY week DESC) as LW 
ORDER BY week ASC
它给我最后8周的时间,然后我将其更改为显示总和(值1):

但它给我的错误是无效的列名“Value1”

我该怎么做才能把它做好。。。
感谢您的帮助……

您的子查询中没有
Value1
列。我想你想做这样的事情:

SELECT SUM(Value1) as TValue1, week 
FROM 
(SELECT Top 7 week, sum(Value1) as Value1
 FROM tbData 
 Group By week 
 ORDER BY week DESC) as LW 
ORDER BY week ASC
试试这个

 SELECT SUM(Value1) as TValue1, week 
    FROM 
    (SELECT Top 7 week , sum(Value1) Value1
     FROM tbData 
     Group By week 
     ORDER BY week DESC) as LW 
    ORDER BY week ASC

然后把这个放在末尾:>“如果
TOP x
,则
SQL Server
。亲爱的Dean,,,我尝试了您的代码,但它给我的错误是无效的列名值1…”。。。但是在我的表中有一个列名Value1。。。感谢您帮助我解决我的问题…亲爱的Der U,,,我尝试了您的代码,但它给我的错误是无效的列名值1。。。但是在我的表中有一个列名Value1。。。谢谢你帮我解决我的问题。。。
 SELECT SUM(Value1) as TValue1, week 
    FROM 
    (SELECT Top 7 week , sum(Value1) Value1
     FROM tbData 
     Group By week 
     ORDER BY week DESC) as LW 
    ORDER BY week ASC
SELECT Top 7 
 week
 ,sum(Value1) Value1
FROM 
 tbData 
GROUP BY 
 week 
ORDER BY 
 week DESC