Saludos, Me dirijo a Uds en esta oportunidad a ver si me alludan en esta consulta que no me arroja los resultados esperados.
Estoy manejando informacion probeniente de un router y quiero mostrar el consumo de los usuarios.
Dicho router maneja un campo BytesIn el cual siempre va incrementando y este campo lo estoy guardando en una tabla de la siguiente manera:
Código:
CREATE TABLE CONSUMO (
COD INTEGER NOT NULL,
NOMBRE VARCHAR(20),
BYTESIN INTEGER,
FECHA DATE
);
COD NOMBRE BYTESIN FECHA
3 roger 20 09/03/2014
4 roger 30 10/03/2014
5 Pedro 100 10/03/2014
6 roger 10 11/02/2014
7 roger 40 10/03/2014
8 roger 50 11/04/2014
Hasta ai todo bien, el problema que tengo es para yo hacer la consulta por mes de determinado usuario,
Por Ejemplo para el usuario roger quisiera el siguiente resultado
Código:
NOMBRE MES ANIO MAXIMO TOTAL
roger 2 2014 10 10
roger 3 2014 40 30
roger 4 2014 50 10
Con la siguiente consulta me devuelve esto:
Código:
Select
NOMBRE,
extract(MONTH from fecha) As Mes,
EXTRACT(YEAR FROM FECHA) As Anio,
Max(BYTESIN)As Maximo,
(Sum(BytesIn)-Max(BYTESIN)) as Total
from consumo
Where Nombre='roger'
group by Nombre,extract(MONTH from fecha),EXTRACT(YEAR FROM FECHA)
Me devuelve esto:
Código:
NOMBRE MES ANIO MAXIMO TOTAL
roger 2 2014 10 0
roger 3 2014 40 50
roger 4 2014 50 0
y el resultado que quiero es 10 en febrero, 30 en marzo y 10 en abril
a simple vista veo que deberia restarse el mes actual menos el mes anterior, pero no se como se haria.
cualquier ayuda es bienvenida, gracias