if statement using a query in sql
if-statement, sql, sql-server, sql-server-2000, stored-procedures
Solution
(1) Using a statement block
IF
(SELECT COUNT(*) FROM Production.Product WHERE Name LIKE 'Touring-3000%' ) > 5
BEGIN
PRINT 'There are 5 Touring-3000 bikes.'
END
ELSE
BEGIN
PRINT 'There are Less than 5 Touring-3000 bikes.'
END ;
(2) Calling stored procedures.
DECLARE @compareprice money, @cost money
EXECUTE Production.uspGetList '%Bikes%', 700,
@compareprice OUT,
@cost OUTPUT
IF @cost <= @compareprice
BEGIN
PRINT 'These products can be purchased for less than
$'+RTRIM(CAST(@compareprice AS varchar(20)))+'.'
END
ELSE
PRINT 'The prices for all products in this category exceed
$'+ RTRIM(CAST(@compareprice AS varchar(20)))+'.'
More Examples:
MSDN 1 MSDN 2
Problem
I would like to ask how to perform condition checking using `IF statement` in `SQL`, something like the below examples .. ``` if (select* from table where id = @id) = 1 --if this returns a value insert statement else update statement go ``` or something similar like using a stored procedure... ``` if (exec SP_something 2012, 1) = 0 insert statement else update stement ``` or maybe by using a UDF in the sql statement like... ``` if (select dbo.udfSomething(1,1,2012)) = 0 insert statement else update statement go ```