select * from tablename 
union
select max(x)+1,sum(y) from tablename 

解决方案 »

  1.   

    select * from tablename where rownum=(select max(rownum) from tablename)
      

  2.   

    呵呵,我会写了
    update tablename set y=(select sum(x) from a where x=(select top 1 x from a order by x desc))
      

  3.   

    哦,好像不对,呵呵:)请问FK兄,rownum字段从何而来
      

  4.   

    update tablename set y=(select sum(x) from a) where x in (select max(x) from a) 
      

  5.   

    select x,case when x = (select max(x) from tablename) then (select sum(x) from tablename) else y end as y
    from tablename你试试
      

  6.   

    反正是把X累加后,把结果update到最后一个Y记录中
      

  7.   

    好吧,我再说清楚些
    x  y
    2  0
    5  0
    1  0
    6  0
    4  0
    .. ..
    n  0
    x=n就是最后一条,不管n是多少,只要把sum(x)的结果,放在x=n对应y字段里
      

  8.   

    DECLARE @X NUMBER
    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
      

  9.   

    select x,case when x = n then (select sum(x) from tablename) else y end as y
    from tablename你试试 
      

  10.   

    第一句应该是:
    DECLARE @X numeric
      

  11.   

    如果最后一条不能用select case定位,就一定不能做到!
    如果用存储过程,建立视图,然后移到最后一条,则可以实现。
      

  12.   

    正确的语句,刚才有点问题
    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
      

  13.   

    update tablename set y=sum(x) where x=(select max(x) from tablename)
      

  14.   

    呵呵,还是没有说清楚,X 的值有没有重复?假如有重复,jcq 的方法是不是就不行了(通过 X 的值定位)
      

  15.   

    select top 1 from table1
    order by index1 desc我在SQL 7里就这么写的。
    不然就要到CLient端写了
      

  16.   

    照我的理解,shinebei 你的原意是不是如何定位物理意义上的最后一条记录?然和SQL数据库不像dBase数据库一样可以随意定位记录的位置的,而是根据一些运算关系如关键字段来定位记录的位置,所以,俺私下认为,应该给你的表加一个关键字段,这样就可以用jcq的方法来做了。
      

  17.   

    广告时间:
    大家去:http://www.csdn.net/expert/topic/134/134766.shtm
    或者去:http://ifree.533.net/绝对精彩!不能错过!
      

  18.   

    感谢liuj0771() 我正好也找到了,呵呵