We help IT Professionals succeed at work.

MySQL If statement inside query

I'm using Delphi 2010 & MySQL in an application,  I am facing a problem  to calculate the sum of Services Debit Side, and the payment at credit side in one table, I'd like to get the Balance sheet. according to the Sum(Credit)-Sum(Debit).

IF (Sum(Credit)>Sum(Debit) , Sum(Credit)-Sum(Debit), 0)  as creditBalance
IF (Sum(Debit>Sum(Credit), , Sum(Debit)-Sum(Credit), 0)  as DebitBalance
queryif.png
Comment
Watch Question

Software architect
CERTIFIED EXPERT
Top Expert 2012
Commented:
Try:

select Sum(Credit) as CrSum, Sum(Debit) as DebSum,
IF (CrSum>DebSum, CrSum-DebSum, 0) as creditBalance,
IF (DebSum>crSum, DebSum-CrSum, 0)  as DebitBalance
from ...

Open in new window

awking00Information Technology Specialist
CERTIFIED EXPERT

Commented:
select ...
case when sum(credit) > sum(debit)
     then sum(credit) - sum(debit)
     else 0
end as creditbalance,
case when sum(debit) > sum(credit)
     then sum(debit) - sum(credit)
     else 0
end as debitbalance

Explore More ContentExplore courses, solutions, and other research materials related to this topic.