EMChamp
EMChamp

Reputation: 449

Checking if select statement in stored procedure returns row

How does one check if a select statement inside a stored procedure returns any rows.

select * from creditcards;
If sqlcod = 0 THEN

I'd like to do something like this for example but sqlcod doesn't seem to work in MySql.

Upvotes: 6

Views: 9182

Answers (2)

user2001117
user2001117

Reputation: 3777

Try using like below also:

Use FOUND_ROWS() and SQL_CALC_FOUND_ROWS:

DELIMITER $$ 

create procedure myproc() 
begin 
   SELECT SQL_CALC_FOUND_ROWS * 
   FROM tbl_name 
   WHERE id > 100 
   LIMIT 10; 

   if SELECT FOUND_ROWS() = 0 then 
   -- log away bro! 
   end if; 
end $$
DELIMITER $$

Upvotes: 2

John Woo
John Woo

Reputation: 263813

try using COUNT,

DELIMITER $$
CREATE PROCEDURE procName()
BEGIN
    SET @recCount = (select count(*) from creditcards);
    If @recCount = 0 THEN
        -- statement here ;
    END IF;
END $$
DELIMITER ;

Upvotes: 11

Related Questions