Hola de nuevo lucas1234:
tienes razón en una consideración:
Cita: Pero en el mes de enero, cuando haga un mes atrás me llava a diciembre, correcto, pero si le digo que sea del año actual... entonces no me va a devolver los datos del mes de diciembre del año pasado
Cómo podría solucionarse?
En este caso lo que tienes que hacer es agregar una condición "especial" para el mes de enero... es decir... es decir, algo así:
Para todos los meses excepto ENERO:
Código:
MONTH(CURDATE()) != 1 AND
MONTH(mes) = MONTH(CURDATE()) - 1 AND
YEAR(mes) = YEAR(CURDATE())
Excusivamente para el mes de enero:
Código:
(MONTH(CURDATE()) = 1 AND
MONTH(mes) = MONTH(CURDATE()) - 1 AND
YEAR(mes) = YEAR(CURDATE()) - 1)
De tal suerte que la consulta debería quedar más o menos así:
Ojo con los paréntesis... dado que combinas AND's y OR's, debes tener cuidado de agrupar correctamente.
Dale un vistazo y nos comentas.
Saludos
Leo.