suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Einfache SQL-Abfrage: Summieren Sie die Werte derselben Spalte auf einmal

Ich habe diese Abfrage erstellt:

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

Aber dies führt zu folgenden Ergebnissen:

id Summe
3 6
2 6
1 6

Summenwert wird nur einmal gedruckt. Können Sie mir helfen, es zu lösen?

Aber ich möchte dieses Ergebnis:

id Summe
3 6
2
1

P粉685757239P粉685757239429 Tage vor603

Antworte allen(1)Ich werde antworten

  • 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;

    更多信息请参见:窗口函数概念和语法

    Antwort
    0
  • StornierenAntwort