# Sum 2 Columns Subtract 2 Columns If Statement?

I would like to use the results "dif" to build If Statement. Unsure how to include ">= 0" into following code.
Could need Case statement?

[English]
If sum(col1) - sum(col2 >= 0 Then continue with other code, Else don't continue

if Exists (
Select Sum(Col1) - Sum(Col2) As [diff]
From Products
Where SalesMan = 'sales@mycompany.com'
And ProductName = 'Laptop'
Group By Col1, Col2
)
--...continue with more code...

###### Who is Participating?

Commented:
Do the calculation in the WHERE statement:

Select * FROM Products
WHERE Sum(Col1) - Sum(Col2) >= 0 AND SalesMan = ....etc...
0

Commented:
IF (SUM(col1) - SUM(col2)) >= 0
BEGIN
--Stuff to do here.
END
0

Commented:
IF (SELECT Sum(Col1) - Sum(Col2)
FROM Products
Where SalesMan = 'sales@mycompany.com'
And ProductName = 'Laptop') >= 0
--do whatever
SELECT 1
ELSE
SELECT 2
0

Commented:
This: sum(col1) - sum(col2 )>= 0  is comparing two values and returning true or false based on which is bigger.
However this: if Exists ( Select Sum(Col1) - Sum(Col2) As [diff]...etc )
is checking to see if a record was returned, regardless of what the values are.

If you want to know if there are any records that match this criterion, wouldn't a where be more appropriate?

if exists ( Select *  From Products  Where SalesMan = 'sales@mycompany.com'
And ProductName = 'Laptop'
and sum(col1) >= sum(Col2)
Group By Col1, Col2 )

As an aside, if your goal is to only do something to records that have a certain value for diff, it would probably be more efficient to build a query that does what you need rather than using a cursor to move through records and test each one.

0

Author Commented:
ya, Where statement
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.