CONSULTA: EMPLEADO CON MAS COMPRAS POR MES
Publicado por Alan (1 intervención) el 16/07/2019 18:56:41
Buen dia!,
Espero me puedan ayudar con la siguiente consulta,
tengo 2 tablas una llamada TICKET en la cual se encuentran los id usuario y las compras realizadas por el cliente
la otra es USUARIO donde tengo el detalle del cliente como su nombre, lo que necesito es saber que usuario
es el que mas ha comprado por MES, ya tengo la consulta del total por mes, el problema lo tengo al momento
de reflejar el detalle del cliente, no logro agregar el id y nombre del cliente si lo hago la regla del monto mas
grande por mes se rompe y me muestra todas las compras y solo quiero el monto mas alto del mes,
el query es el siguiente:
SELECT FECHA, MAX(CANTIDAD)
FROM (
SELECT TO_CHAR(TRUNC(TIC.FECHA),'MM/YYYY') "FECHA",usu.id_usuario "id_Usu",
usu.nombre"NOMBRE", SUM(tic.total) AS CANTIDAD
FROM ttafdu_ticket TIC
INNER JOIN TTAFDU_USUARIO USU ON usu.id_usuario = tic.id_usuario
GROUP BY TO_CHAR(TRUNC(TIC.FECHA),'MM/YYYY'),usu.id_usuario, usu.nombre
ORDER BY CANTIDAD DESC
)
GROUP BY FECHA;
con el obtengo esto:
fecha l Max(Cantidad)
07/2019 l 229
05/2019 l 265
06/2019 l 506
lo que necesito es algo como esto:
fecha l Max(Cantidad)l ID_CLIENTE l NOMBRE
07/2019 l 229 l 1 l DANIEL
05/2019 l 265 l 6 l ALAN
06/2019 l 506 l 2 l ARTURO
espero puedan apoyarme, soy muy novato en este tema pero con muchas ganas de dominarle,
les agradezco,
PD OCUPO SQL ORACLE
Espero me puedan ayudar con la siguiente consulta,
tengo 2 tablas una llamada TICKET en la cual se encuentran los id usuario y las compras realizadas por el cliente
la otra es USUARIO donde tengo el detalle del cliente como su nombre, lo que necesito es saber que usuario
es el que mas ha comprado por MES, ya tengo la consulta del total por mes, el problema lo tengo al momento
de reflejar el detalle del cliente, no logro agregar el id y nombre del cliente si lo hago la regla del monto mas
grande por mes se rompe y me muestra todas las compras y solo quiero el monto mas alto del mes,
el query es el siguiente:
SELECT FECHA, MAX(CANTIDAD)
FROM (
SELECT TO_CHAR(TRUNC(TIC.FECHA),'MM/YYYY') "FECHA",usu.id_usuario "id_Usu",
usu.nombre"NOMBRE", SUM(tic.total) AS CANTIDAD
FROM ttafdu_ticket TIC
INNER JOIN TTAFDU_USUARIO USU ON usu.id_usuario = tic.id_usuario
GROUP BY TO_CHAR(TRUNC(TIC.FECHA),'MM/YYYY'),usu.id_usuario, usu.nombre
ORDER BY CANTIDAD DESC
)
GROUP BY FECHA;
con el obtengo esto:
fecha l Max(Cantidad)
07/2019 l 229
05/2019 l 265
06/2019 l 506
lo que necesito es algo como esto:
fecha l Max(Cantidad)l ID_CLIENTE l NOMBRE
07/2019 l 229 l 1 l DANIEL
05/2019 l 265 l 6 l ALAN
06/2019 l 506 l 2 l ARTURO
espero puedan apoyarme, soy muy novato en este tema pero con muchas ganas de dominarle,
les agradezco,
PD OCUPO SQL ORACLE
Valora esta pregunta


0