Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как да добавите следващия и да извадите предходния ред в SQL Server въз основа на условие

Трябва да сумирате CASE израз, който може да прави разлика между дебити и кредити:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Връщане на списък със сървърни тригерни събития в SQL Server

  2. Възникна сериозна грешка в текущата команда при опит за вмъкване от свързан сървър

  3. Има ли начин да се извлече дефиницията на изглед от SQL Server с помощта на обикновен ADO?

  4. Как да съединя две несвързани таблици в sql

  5. Избягвайте тези 4 често срещани грешки в DBA