Ver Mensaje Individual
  #14  
Antiguo 09-06-2004
cahp cahp is offline
Miembro
 
Registrado: may 2003
Ubicación: Alicante
Posts: 90
Reputación: 22
cahp Va por buen camino
prueba asi, creo que aprovecharas mejor los indices

Código SQL [-]
CREATE PROCEDURE STOCK_VS_SERIE 
returns (PRODUCTO        VARCHAR(25),
     NOMBRE_PRODUCTO VARCHAR(150),
     STOCK_FISICO    DOUBLE PRECISION,
     NRO_SERIES      INTEGER,
     DIFERENCIA      INTEGER)
AS 

begin
FOR
  SELECT COUNT(CODIGO_SERIE), CODIGO_PRODUCTO
  FROM SERIE_PRODUCTO
  GROUP BY CODIGO_PRODUCTO
  INTO :NRO_SERIES, :PRODUCTO
DO
BEGIN
     SELECT NOMBRE_PRODUCTO, STOCK_FISICO
     FROM PRODUCTO
     WHERE CODIGO_PRODUCTO = :PRODUCTO
     INTO :NOMBRE_PRODUCTO, :STOCK_FISICO;
     
     DIFERENCIA = STOCK_FISICO - NRO_SERIES;

     if (DIFERENCIA > 0 ) THEN
     SUSPEND;
END
end

saludos
Responder Con Cita