Ver Mensaje Individual
  #3 (permalink)  
Antiguo 21/09/2010, 09:59
nelqui
 
Fecha de Ingreso: septiembre-2010
Mensajes: 10
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Procedure, cursor

Este es mi procedure, en realida son dos tabla, un es cedula y otro chapa. y tengo que mostrar la cantidad impresa desde una fecha a otra agrupado con la fecha urev_fecha_hora

CREATE OR REPLACE PROCEDURE WRA.SL_RESUMEN_MENSUAL (
FECHA_IN IN DATE,
FECHA_FIN IN DATE,
WRRESUMEN OUT REF CURSOR
)
AS
/* TYPE LOCAL VARIABLES DECLARATION HERE */
BEGIN
OPEN WRRESUMEN FOR select (
select count(*) from wra.cedula
where (wra.cedula.urev_fecha_hora BETWEEN FECHA_IN and FECHA_FIN) AND
(wra.cedula.id_tipo_estado = 4)and (wra.cedula.procesado in (0,1)) and (wra.cedula.tipo_automotor ='MOTO')
GROUP BY urev_fecha_hora) AS CEDULA_MOTO,

(select count(*) from wra.cedula
where (wra.cedula.urev_fecha_hora BETWEEN FECHA_IN and FECHA_FIN) AND
(wra.cedula.id_tipo_estado = 4)and (wra.cedula.procesado in (0,1)) and (wra.cedula.tipo_automotor <>'MOTO')
GROUP BY urev_fecha_hora) AS CEDULA_AUTO,

/* DATOS DE CHAPAS TOTAL */
(select count(*) from wra.chapa
where (wra.chapa.urev_fecha_hora BETWEEN FECHA_IN and FECHA_FIN)AND
(wra.chapa.id_tipo_estado = 4)and (wra.chapa.tipo_automotor <>'MOTO')AND(wra.chapa.tipo_automotor <>'MOTOCICLETA')
group by urev_fecha_hora) AS chapa_auto,

(select count(*) from wra.chapa
where (wra.chapa.urev_fecha_hora BETWEEN FECHA_IN and FECHA_FIN)AND
(wra.chapa.id_tipo_estado = 4)and ((wra.chapa.tipo_automotor ='MOTO')or(wra.chapa.tipo_automotor ='MOTOCICLETA'))
group by urev_fecha_hora) AS chapa_moto
from wra.cedula;

END;