Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
1
respuesta

Diferencia de resultados

Hola, mi consulta me dio los mismo registros que Alexei . La duda q me queda, es porqué son diferentes a los de la solucion del tutor, creo q algo le estoy errendo en los porcentajes %

SELECT A.DNI, A.NOMBRE, A.MES_AÑO, 
A.CANTIDAD_VENDIDA, A.CANTIDAD_MAXIMA,
(A.CANTIDAD_VENDIDA - A.CANTIDAD_MAXIMA) AS DIFERENCIA, 
ROUND((((A.CANTIDAD_VENDIDA - A.CANTIDAD_MAXIMA)/A.CANTIDAD_MAXIMA)*100), 2) AS DIFERENCIA_PORCENTUAL,
CASE 
    WHEN (A.CANTIDAD_VENDIDA - A.CANTIDAD_MAXIMA) <= 0 THEN 'Venta válida'
    ELSE 'Venta inválida'
END AS STATUS_VENTA
FROM 
(SELECT F.DNI, TC.NOMBRE, DATE_FORMAT(F.FECHA_VENTA, "%m - %Y") AS MES_AÑO, 
SUM(IFa.CANTIDAD) AS CANTIDAD_VENDIDA, MAX(VOLUMEN_DE_COMPRA)/10 AS CANTIDAD_MAXIMA
FROM facturas F
INNER JOIN
items_facturas IFa
ON F.NUMERO = IFa.NUMERO
INNER JOIN tabla_de_clientes TC
ON F.DNI = TC.DNI
WHERE YEAR(F.FECHA_VENTA) = 2018
GROUP BY F.DNI, TC.NOMBRE, DATE_FORMAT(F.FECHA_VENTA, "%m - %Y")) A
WHERE (((A.CANTIDAD_VENDIDA - A.CANTIDAD_MAXIMA)/A.CANTIDAD_MAXIMA)*100) > 50;
1 respuesta
solución!

¡Hola Diego!

Es posible que la diferencia en los resultados se deba a que estás calculando los porcentajes de manera diferente a la solución del tutor. En la línea donde calculas la diferencia porcentual, estás dividiendo la diferencia entre la cantidad vendida y la cantidad máxima por la cantidad máxima, y luego multiplicando por 100. La solución del tutor puede estar utilizando una fórmula diferente para calcular la diferencia porcentual.

Te sugiero revisar con cuidado los cálculos que estás haciendo en tu consulta y compararlos con los de la solución del tutor. También puedes intentar ejecutar la consulta del tutor y comparar los resultados con los tuyos para identificar las diferencias.

Espero que esto te ayude a resolver tu duda. ¡Buenos estudios!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios! :)