| |||
Procedure, cursor Gracias de ante mano. mi problema es en un procedimiento almacenado. en la cual tengo que hacer que en un cursor me traiga todo de 4 consulta. cada consulta es traer count(*) de todo el registro de una fecha a otra. con un group by. ya cree todas las consulta pero me trae todo, pero en una fila. y yo quiero que me traiga para cada consulta en campo diferente. ayuda |
| |||
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; |
| ||||
Respuesta: Procedure, cursor la pregunta es como lo estas llamado? como haces el execute? Mira este tema donde matanga pone un claro ejemplo de lo que creo estas buscando. saludos
__________________ Without data, You are another person with an opinion. W. Edwads Deming |
| |||
Respuesta: Procedure, cursor Primeramente estoy usando delphi, y por lo tanto estoy ejecutando en un dataset, habro el dataset y le paso alli mismo el parametro y ejecuto. y ahora si me dio un error que dice '' ORA-01427:single-row subquery returns more than one row'', que segun entiendo es que la consulta esta devolviendo mas de una fila. la cual esta bien porque si solo era un count(*) sin el group by. solo iva a devolver una registro pero como es group by devuelve mas de una fila. Lo que yo quiero hacer es lo siguiente: cedula chapa fecha auto moto auto moto 20/09/2010 50 20 30 20 21/09/2010 100 43 50 60 y si sucesivamente dependiendo de de que fecha se le pase el parametro Asimismo es el grafico en la que quiero que mi procedure me devuelva los datos, la fecha no es necesario pero los 4 columna si. es un modelo la cual quiero hacer para luego ejecutar y mostrar en un reporte |
Etiquetas: |