Solucionado (ver solución)
Solucionado
(ver solución)
1
respuesta

[Duda]Error Code: 1064. You have an error in your SQL syntax;

Error Code: 1064. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 8

SELECT A.DNI, A.NOMBRE, A.MES_AÑO,
(A.CANTIDAD_VENDIDA - A.CANTIDAD_MAXIMA) AS DIFERENCIA,
CASE
    WHEN (A.CANTIDAD_VENDIDA - A.CANTIDAD_MAXIMA) <= 0 THEN "Venta válida"
    ELSE "Venta inválida"
END AS STATUS_VENTA
FROM (
SELECT DNI, NOMBRE, VOLUMEN_DE_COMPRA FROM tabla_de_clientes TC;
    SELECT F.DNI, TC.NOMBRE, DATE_FORMAT(F.FECHA_VENTA, "%m - %Y") AS MES_AÑO,
    SUM(IFa.CANTIDAD) AS CANTIDAD_VENDIDA, 
    MAX(TC.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 TC.DNI = F.DNI
    GROUP BY 
    F.DNI, TC.NOMBRE, DATE_FORMAT(F.FECHA_VENTA, "%m - %Y ")
) A;

la ultima linea despues de group by aparece con una equis roja... Según yo copié bien el código del profe pero me da error y no me deja avanzar, me ayudan para ver que tengo malo? Gracias!!!

1 respuesta
solución!

¡Hola Melany! Cómo va? Espero que todo bien :D

El error que estás experimentando se debe a un pequeño error de sintaxis en tu consulta SQL. Parece que te has olvidado de cerrar un paréntesis en la subconsulta que estás utilizando. Aquí está la parte de tu consulta que necesita ser corregida:

SELECT DNI, NOMBRE, VOLUMEN_DE_COMPRA FROM tabla_de_clientes TC;

Deberías eliminar el punto y coma (;) al final de esta línea para que la subconsulta esté correctamente cerrada. Aquí está la corrección:

SELECT DNI, NOMBRE, VOLUMEN_DE_COMPRA FROM tabla_de_clientes TC

Una vez que hagas esta corrección, tu consulta debería funcionar correctamente. Recuerda siempre revisar la sintaxis de tu consulta y asegurarte de que todos los paréntesis estén correctamente cerrados. ;)

Un abrazo y buenos estudios!

Si este post te ayudó, por favor, marca como solucionado ✓.