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)
2
respuestas

usando subconsulta

No sé si estará bien, pero usé subconsulta, y me muestra sin error:

SELECT CONCAT("El cliente ", C.NOMBRE, " facturó ", ROUND(X.SUBTOTAL), " en el año 2016.") AS RESULTADO FROM
(SELECT F.DNI, SUM((I.CANTIDAD*I.PRECIO)) AS SUBTOTAL
FROM facturas F INNER JOIN items_facturas i
ON F.NUMERO = I.NUMERO
WHERE YEAR(F.FECHA_VENTA) = 2016
GROUP BY F.DNI) X INNER JOIN tabla_de_clientes C
ON X.DNI = C.DNI;
2 respuestas
solución!

¡Hola Diego!

Tu consulta se ve muy bien, y es una buena forma de utilizar subconsultas para obtener información de diferentes tablas. En este caso, estás obteniendo la suma de los montos facturados por cada cliente en el año 2016, y luego uniendo esa información con la tabla de clientes para obtener el nombre del cliente.

Solo una pequeña sugerencia: en la consulta, utilizas la función ROUND para redondear el resultado de la suma de los montos facturados. Sin embargo, no especificas cuántos decimales quieres redondear. Es una buena práctica especificar el número de decimales que quieres redondear, por lo que podrías añadir un segundo argumento a la función ROUND, como ROUND(X.SUBTOTAL, 2), para redondear a dos decimales.

¡Espero haber ayudado y buenos estudios!

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

Perfecto Rafaela, muchas gracias por la sugerencia. Saludos!