Sentencia

Como están, necesito una ayuda por favor
Estoy elaborando un reporte con discoverer y necesito que en el reporte se presenten ciertos valores como porcentajes en comparación a un determinado campo.
El reporte debe presentar las ventas por mes y como estas van evolucionando en los siguientes 3 o 4 meses, el reporte recibe como parámetro de entrada la fecha del mes 1.
Algo así por ejemplo
Enero febrero
Monto 4500 100% 4320 96%
# opers 2000 100% 1980 99%
Los porcentajes son calculados en base al primer mes.

1 respuesta

Respuesta
1
Después de una larga ausencia por motivos personales, le presento la solución requerida:
select month, sum(valor) ventas,
sum(valor)/first_value(sum(valor)) over
(Order by month rows 12 preceding ) as porcentaje,
sum(valor)/first_value(sum(valor)) over
(Order by month rows between 1 preceding and 1 following) as porcentaje_previo,
sum(valor)/last_value(sum(valor)) over
(order by month rows between 1 preceding and 1 following) as porcentaje_sig
from ventas_tot
group by month
order by month;
El sql lo que hace es:
Para los 12 meses calcula el valor de la venta del primer mes y el porcentaje de variación de los meses siguientes con respecto al primer mes.
En porcentaje previo hace el calculo de un mes y el incremento de ese mes con respecto al siguiente.
El porcentaje previo es inverso es decir el porcentaje del siguiente contra el anterior mes.
Espero haber resuelto su duda
Esto es para la version 10g por supuesto
ARA

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas