1) ¿Qué versión de MySQL tienes en local y qué versión está en el servidor remoto?
2) Estás usando SUBSTRING() para obtener el
mes. ¿Por qué no usas directamente MONTH() y YEAR()?
Código sql:
Ver originalSELECT
MONTH(FECHA) MES,
SUM(facturacion)
FROM presupuesto
WHERE
YEAR(Fecha) = 2009 AND producto IN (16,17)
GROUP BY MONTH(fecha)
ORDER BY MONTH(fecha);
Otro tip: Si estás comparando enteros, no pongas los valores entre apóstrofes (') ya que no sólo es innecesario, además estás obligando a MySQL a realizar una conversión implícita que no tiene razón de existir.