seleccionar por centro, solicitudes, y por tipo de solicitudes
Publicado por Jesus (6 intervenciones) el 26/10/2017 17:19:49
Buenas tardes
Quiero realizar una sql para una tabla de solicitudes y que me salga el siguiente resultado en pantalla:
Centro Solicitadas Pendientes de tramitar Tramitadas Anuladas
A CORUÑA 2 0 1 1
AVILES 2 0 2 0
ALMERIA 1 0 1 0
CADIZ 1 1 0 0
CARTAGENA 2 0 2 0
Donde el centro es la columna quiero agrupar, Solicitadas el numero total de solicitudes por centro, Pendientes de tramitar el numero total Pendientes(Estado='I') por centro,Tramitadas el numero total Tramitadas (Estado='T') por centro, Anuladas el numero total de anuladas(Estado='A') por centro
Estoy diseñando primero el Modelo Logico en un diagrama UML y un compañero lo hara en Java más adelante.
Tenia propuesto recuperar primero los Centros mediante una SQL:
select distinct co_idcentro
from sanicitaonline
where co_fchsolicitud between last_day(ADD_MONTHS(sysdate,-2))
and last_day(trunc(sysdate,'Month')-1)
order by co_idcentro
(Nota:el where es que quiero agruparlos en un intervalo de todo el mes anterior, si hay otra manera mejor leere vuestras opiniones)
después de recuperar los centros tenia mediante un bucle (For o While) realizar un select count(*) filtrando con cada centro recuperado en la SQL de antes y por cada tipo de Estado.
Si hay otra manera de hacerlo mejor, la escuchare,
Muchas gracias
Un saludo.
Quiero realizar una sql para una tabla de solicitudes y que me salga el siguiente resultado en pantalla:
Centro Solicitadas Pendientes de tramitar Tramitadas Anuladas
A CORUÑA 2 0 1 1
AVILES 2 0 2 0
ALMERIA 1 0 1 0
CADIZ 1 1 0 0
CARTAGENA 2 0 2 0
Donde el centro es la columna quiero agrupar, Solicitadas el numero total de solicitudes por centro, Pendientes de tramitar el numero total Pendientes(Estado='I') por centro,Tramitadas el numero total Tramitadas (Estado='T') por centro, Anuladas el numero total de anuladas(Estado='A') por centro
Estoy diseñando primero el Modelo Logico en un diagrama UML y un compañero lo hara en Java más adelante.
Tenia propuesto recuperar primero los Centros mediante una SQL:
select distinct co_idcentro
from sanicitaonline
where co_fchsolicitud between last_day(ADD_MONTHS(sysdate,-2))
and last_day(trunc(sysdate,'Month')-1)
order by co_idcentro
(Nota:el where es que quiero agruparlos en un intervalo de todo el mes anterior, si hay otra manera mejor leere vuestras opiniones)
después de recuperar los centros tenia mediante un bucle (For o While) realizar un select count(*) filtrando con cada centro recuperado en la SQL de antes y por cada tipo de Estado.
Si hay otra manera de hacerlo mejor, la escuchare,
Muchas gracias
Un saludo.
Valora esta pregunta
0