#mysql
#mysql
Вопрос:
Пожалуйста, взгляните на часть моего sql-запроса…
COALESCE((sum(i.amount) - COALESCE(sum(i.discount),0)) - COALESCE(SUM(r.rfee r.tfee r.ofee),0),0) AS balance_due
Как вы можете видеть, я использую COALESCE
для замены NULL на 0, но оно не возвращает отрицательное значение в случае, если значение COALESCE(SUM (r.reg_fee r.tut_fee r.other_fee), 0) больше, чем (sum (i.amount) — COALESCE(sum (i.discount), 0) , как я могу получить отрицательное значение вместо 0.
Спасибо
Ответ №1:
Попробуйте это:
COALESCE(sum(i.amount), 0) - COALESCE(sum(i.discount), 0) - COALESCE(SUM(r.rfee r.tfee r.ofee), 0) AS balance_due