Hola, después de estar probando he llegado a la conclusión de que no entiendo mucho el funcionamiento de MySQL, la función al final queda:
Código:
delimiter $$
DROP PROCEDURE IF EXISTS dias_sin $$
CREATE PROCEDURE dias_sin (out resultado INT)
BEGIN
declare aux INT DEFAULT 1;
declare resultado INT DEFAULT 0;
while aux>resultado do
select max(datediff(dt2.fecha,dt1.fecha)) as fecha into aux from datos as dt1
inner join datos as dt2 on (dt1.salida_num=dt2.salida_num+1);
set resultado = aux;
END while;
END$$
delimiter;
Me da error de sintaxis en la línea 1 cerca de delimiter. No lo entiendo.