Как вычесть сумму (производится из той же таблицы) в MYSQL? - PullRequest
0 голосов
/ 28 января 2019
amount  group
--------------
 100     'a'
  40     'b'
  30     'a'
  50     'b'

вывод запроса:

diff(a-b)
---------
  40

как это сделать в MYSQL?

1 Ответ

0 голосов
/ 28 января 2019

Вы можете просто:

SELECT (SELECT SUM(amount) FROM t WHERE `group` = 'a') -
       (SELECT SUM(amount) FROM t WHERE `group` = 'b') AS diff

Или:

SELECT SUM(CASE
           WHEN `group` = 'a' THEN  amount
           WHEN `group` = 'b' THEN -amount
       END) AS diff
FROM t
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...