Mysql
 sql >> Baza danych >  >> RDS >> Mysql

SQL :ADD &MINUS na podstawie typu pola

Możesz użyć zmiennej do przechowywania łącznej kwoty:

SELECT ID, 
       @s := IF(ACTION_TYPE='ADD', @s + ACTION_QTY, @s - ACTION_QTY) AS BALANCE,
       ACTION_QTY,
       ACTION_TYPE
FROM tableA
CROSS JOIN (SELECT @s := 0) AS var
ORDER BY ID 

Powyższe zapytanie zakłada, że ​​istnieją tylko dwa typy ACTION_TYPE wartości, a mianowicie 'ADD' i 'DEDUCT' . Dlatego jeśli ACTION_TYPE nie jest równe 'ADD' , to jest równe 'DEDUCT' .

Pokaz tutaj




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Niezgodność MySQL z PHP

  2. Użyj wyrażeń regularnych w JPA CriteriaBuilder

  3. Dodaj pola DATE i TIME, aby uzyskać pole DATETIME w MySQL

  4. MySQL:wybierz wszystkie daty w zakresie, nawet jeśli nie ma żadnych rekordów

  5. Połącz przykładową aplikację komputer-baza danych-jpa Play 2.1 z MySQL