Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Datensätze in Tabelle von CTE aktualisieren

Aktualisierungen, die Sie am CTE vornehmen, werden in die Quelltabelle kaskadiert.

Ich musste Ihr Schema etwas erraten, aber so etwas sollte funktionieren.

;WITH T AS
(   SELECT  InvoiceNumber, 
            DocTotal, 
            SUM(Sale + VAT) OVER(PARTITION BY InvoiceNumber) AS NewDocTotal
    FROM    PEDI_InvoiceDetail
)
UPDATE  T
SET     DocTotal = NewDocTotal