Hola cesarpunk:
Creo que renemos otro problema de no poner atención en lo que se escribe.
Checa la sintaxis del IF:
Código:
IF search_condition THEN statement_list
[ELSEIF search_condition THEN statement_list] ...
[ELSE statement_list]
END IF
Observas cómo se cierra???, entonces por qué pones esto:
y más abajo tienes esto...
SELECT estado;
END IF;
Compañero, la idea del foro no es que corras a publicar una pregunta cada que una consulta te marque un error... hay que tratar de poner atención a lo que el DBMS te dice acerca del problema con la consulta... sobre todo cuando se trata de errores de sintaxis, estos suelen ser culpa del desarrollador.
Saludos
Leo.