mysql Получите положительный и отрицательный результат от суммы () - PullRequest
0 голосов
/ 22 апреля 2020

У меня есть mysql таблица со структурой:

`credit` decimal(10,2) NOT NULL,
`debit` decimal(10,2) NOT NULL,

И я хочу получить итоговый результат как положительный и отрицательный, как: посмотреть на данные здесь

когда я запускаю этот

sum(credit - debit) as total 

результаты всегда возвращают положительное значение, даже если отрицательное

я хочу, чтобы результаты были положительными, если они положительные, и отрицательными, если они отрицательные

положительный: -123

отрицательный: 123

как я могу это сделать?

заранее спасибо

1 Ответ

0 голосов
/ 22 апреля 2020

Предположительно, вы хотите:

select
    sum(credit - debit) total,
    abs(sum(credit - debit)) total_as_positive,
    - abs(sum(credit - debit) total_as_negative
from mytable

Или, если вы хотите поместить результат в другой столбец в зависимости от его знака:

select
    case when sum(credit - debit) > 0 then sum(credit - debit) end positive,
    case when sum(credit - debit) < 0 then sum(credit - debit) end negative
from mytable
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...