sql >> Databasteknik >  >> RDS >> Sqlserver

Hur man lägger till nästa och subtraherar föregående rad i SQL Server baserat på villkor

Du bör summera en CASE uttryck som kan skilja mellan debeter och krediter:

SELECT 
    Id,
    TransactionType,
    SUM(CASE WHEN TransactionType = 'Receipt' THEN value ELSE -1.0*value END)
        OVER (ORDER BY Id ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS DiffValue
FROM #Temp
ORDER BY Id;



  1. dåligt ordfilter skrivet inbyggt i MYSQL utan php

  2. Postgresql :Lägg till element i json-arrayobjekt

  3. pg_upgrade på Windows kan inte skriva till loggfilen pg_upgrade_internal.log

  4. kan inte lagra 0 eller 1 som boolean laravel postgresql