正确的语句,刚才有点问题 DECLARE @X NUMERIC DECLARE TEST_AAAA CURSOR SCROLL FOR SELECT x FROM AAA OPEN TEST_AAAA FETCH LAST FROM TEST_AAAA INTO @X UPDATE AAA SET Y = (SELECT SUM(X) FROM AAA) WHERE X = @X CLOSE TEST
update tablename set y=sum(x) where x=(select max(x) from tablename)
呵呵,还是没有说清楚,X 的值有没有重复?假如有重复,jcq 的方法是不是就不行了(通过 X 的值定位)
select top 1 from table1 order by index1 desc我在SQL 7里就这么写的。 不然就要到CLient端写了
update tablename set y=(select sum(x) from a where x=(select top 1 x from a order by x desc))
from tablename你试试
x y
2 0
5 0
1 0
6 0
4 0
.. ..
n 0
x=n就是最后一条,不管n是多少,只要把sum(x)的结果,放在x=n对应y字段里
DECLARE test CURSOR FOR
SELECT x
FROM a
FETCH LAST FROM TEST
INTO @X
UPDATE A SET Y=(SELECT SUM(X) FROM A) WHERE X=@X
CLOSE TEST
from tablename你试试
DECLARE @X numeric
如果用存储过程,建立视图,然后移到最后一条,则可以实现。
DECLARE @X NUMERIC DECLARE TEST_AAAA CURSOR SCROLL FOR SELECT x
FROM AAA OPEN TEST_AAAA
FETCH LAST
FROM TEST_AAAA
INTO @X
UPDATE AAA
SET Y =
(SELECT SUM(X)
FROM AAA)
WHERE X = @X CLOSE TEST
order by index1 desc我在SQL 7里就这么写的。
不然就要到CLient端写了
大家去:http://www.csdn.net/expert/topic/134/134766.shtm
或者去:http://ifree.533.net/绝对精彩!不能错过!