Mysql 如果返回记录,则退出循环
我在一个按预期工作的存储过程中有以下循环。它生成给定数量的sql查询。我需要做的是在返回一条或多条记录时退出循环Mysql 如果返回记录,则退出循环,mysql,stored-procedures,loops,Mysql,Stored Procedures,Loops,我在一个按预期工作的存储过程中有以下循环。它生成给定数量的sql查询。我需要做的是在返回一条或多条记录时退出循环 set hour_inc = 1 ; days_loop: loop if hour_inc > p_hours then leave days_loop ; end if ; set @sqlstr = some sql query ; PREPARE stmt FROM @
set hour_inc = 1 ;
days_loop: loop
if hour_inc > p_hours then
leave days_loop ;
end if ;
set @sqlstr = some sql query ;
PREPARE stmt FROM @sqlstr;
EXECUTE stmt ;
DEALLOCATE PREPARE stmt;
set hour_inc = hour_inc + 1 ;
end loop days_loop ;
尝试打破循环尝试打破循环您可以使用:
您可以使用:
可以使用break and continue语句。可以使用break and continue语句。我想问题更多的是确定准备好的语句返回的记录数。eggyal是正确的。如果返回的记录超过0条,我需要离开循环。我想问题更多的是确定预处理语句返回的记录数。eggyal是正确的。如果返回的记录超过0条,我需要离开循环。
IF FOUND_ROWS() > 0 THEN
LEAVE days_loop;
END IF;