首頁  >  問答  >  主體

簡單的SQL查詢:一次求和和相同列的值

我已經建立了這個查詢:

SELECT table1.id, b.sum 
FROM table1 
CROSS JOIN (SELECT SUM(id) sum 
            FROM table1) b 
ORDER BY id DESC;

但是這樣會產生如下結果:

id 總和
3 6
2 6
1 6

Sum值只印一次。你能幫我解決嗎。

但是我想要這個結果:

id 總和
3 6
2
1

P粉685757239P粉685757239380 天前575

全部回覆(1)我來回復

  • P粉665427988

    P粉6654279882023-09-15 13:01:31

    這應該可以解決:

    select 
       id,
       CASE WHEN id=(max(id) over()) 
            THEN sum(id) over (order by id) END as 'sum' 
    from cte1
    order by id desc;

    更多資訊請參閱:視窗函數概念與語法

    回覆
    0
  • 取消回覆