Ejemplo Procedimiento Almacenado con mysql , recibiendo un parametro
USE bdtienda; DELIMITER $$ -- inicio DROP PROCEDURE IF EXISTS sp_productoPorCod$$ -- eliminamos si existe un procedimiento con el mismo nombre CREATE PROCEDURE sp_productoPorCod (IN cod INT) -- creamos el procedimiento con un parámetro de entrada BEGIN -- inicio cuerpo procedimiento almacenado DECLARE estadoOfert CHAR(2); -- declaramos una variable local para almacenar el estado de Oferta. /* Hacemos una consulta y el resultado lo almacenamos en la variable declarada*/ SELECT oferta INTO estadoOfert FROM productos WHERE oferta = 'SI' AND codproducto = cod; IF estadoOfert = 'SI' THEN -- si está en oferta elegimos precio_oferta SELECT codproducto, nombreproduc, precio_oferta FROM productos WHERE codproducto = cod; ELSE -- sino el precio_normal SELECT codproducto, nombreproduc, precio_normal FROM productos WHERE codproducto = cod; END IF; END $$ -- fin de cuerpo del procedimiento almacenado DELIMITER ; -- fin call sp_productoPorCod(2); -- llamamos al procedimiento