A ver doctor, vamos por partes.
Te recomiendo un manual de SQL más que rápido.
Cuando agrupas, los campos que van en el group by van tal cual en la select, el resto tiene que ir en una función de agregado ( sum, max, min, avg, ...)
Cuando te puse Anio_Mes, me refería a que tienes que ponerlo para luego poder agruparlo.
Del campo en el que tienes la fecha, tendrás que sacar el año y el mes. Si filtras por año, sólamente necesitarás el mes, pero no sé qué formato tiene el campo (date, string, ...). Si tu campo de fecha es el TTDTE, deduzco ( ya que no has puesto el tipo de campo que es ) que es un string/char/varchar.
Entonces, para saber el año y el mes, te quedas con los primeros 6 caracteres del campo TTDTE. O si filtras por el año, te puedes quedar con los caracteres 5 y 6 que identifican el año. Si no filtras, se mezclarían los datos del mes de Enero de diferentes años.
Resumiendo, y asumiendo que el campo TTDTE es de tipo CHAR o VARCHAR y que contiene la fecha en formato YYYYMMDD
Código SQL
[-]
Si no filtras por año
select substring(TTDTE,1,6) as Mes, TPROD,
sum(T1+t2+t3) as TOTAL
from tabla
where TPROD like 'Q%'
group by substring(
TTDTE,1,6), TPROD
Código SQL
[-]Si filtras por año
select substring(TTDTE,5,2) as Mes, TPROD,
sum(T1+t2+t3) as TOTAL
from tabla
where TPROD like 'Q%'
and substring(TTDTE,1,4) = '2015'
group by substring(TTDTE,5,2), TPROD
Prueba y nos dices.
Saludos