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

SQL:ДОБАВЯНЕ &МИНУС въз основа на типа на полето

Можете да използвате променлива за съхраняване на кумулативната сума:

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 

Горната заявка предполага, че има само два типа ACTION_TYPE стойности, а именно 'ADD' и 'DEDUCT' . Следователно, ако ACTION_TYPE не е равно на 'ADD' , тогава е равно на 'DEDUCT' .

Демо тук




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Възможно ли е достъп до полета в обединена таблица във Vapor?

  2. Създайте символна връзка за библиотеката libmysqlclient.18.dylib

  3. Трябва ли да използвате подготвени изявления само за тяхното избягване?

  4. Как да конвертирате ISO8601 във формат на дата в php

  5. Java:Вмъкнете няколко реда в MySQL с PreparedStatement