Consulta SQL - división entre cero

Buenas

Al final se me ha encendido la bombilla y he conseguido realizarlo. Dejo aquí la solución que he aplicado por si alguna vez alguien se encuentra un problema similar.

No estoy seguro de si es la solución más óptima, pero al menos funciona :stuck_out_tongue:

SELECT * FROM (SELECT T1."ItemCode", T1."ItemName",T2."ItmsGrpNam" AS "Grupo de artículo", T1."OnHand" AS "Stock total de artículo", T0."WhsCode", T0."BatchNum", T0."Quantity" AS "Cantidad lote",T0."InDate", T0."ExpDate", 
DAYS_BETWEEN(T0."InDate",T0."ExpDate") AS "Vida útil" ,
DAYS_BETWEEN(CURRENT_DATE, T0."ExpDate") AS "Vida útil restante",
CASE 
WHEN T0."ExpDate" IS NULL THEN 0
WHEN T0."InDate" IS NULL THEN 0
ELSE 
	CASE
	WHEN DAYS_BETWEEN(CURRENT_DATE, T0."ExpDate")=0 THEN 0
	WHEN DAYS_BETWEEN(T0."InDate",T0."ExpDate")=0 THEN 0
	ELSE
		(DAYS_BETWEEN(CURRENT_DATE, T0."ExpDate")/DAYS_BETWEEN(T0."InDate",T0."ExpDate"))*100 
	END
END AS "IVR"
FROM OIBT T0  INNER JOIN OITM T1 ON T0."ItemCode" = T1."ItemCode" INNER JOIN OITB T2 ON T1."ItmsGrpCod" = T2."ItmsGrpCod" 
WHERE T0."Quantity"<>0
ORDER BY T1."ItemName",T0."BatchNum",T1."ItemCode",T0."WhsCode") A
WHERE A."IVR"<25

Un saludo

3 Me gusta