次のクエリを作成しました。
SELECT GVA14.COD_ZONA, Sum(GVA12.IMPORTE) AS SumOfIMPORTE
FROM GVA14 LEFT JOIN GVA12
ON GVA14.COD_CLIENT = GVA12.COD_CLIENT
WHERE Month(GVA12.FECHA_EMIS)=Month(curdate())
AND Year(GVA12.FECHA_EMIS)=Year(curdate())
GROUP BY GVA14.COD_ZONA;
COD_ZONA
しかし、私が表示したい他の値があります。月と年のフィルターを削除すると、これらが表示されます。これは、興味のある人のためのSQLフィドルです。http://sqlfiddle.com/#!2/3aae1/3
編集1#
私は今、次のクエリを持っています:
SELECT GVA14.COD_ZONA, Coalesce(Sum(GVA12.IMPORTE), 0) AS SumOfIMPORTE
FROM GVA14
LEFT JOIN GVA12
ON GVA14.COD_CLIENT = GVA12.COD_CLIENT
AND Month(GVA12.FECHA_EMIS)=Month(curdate())
AND Year(GVA12.FECHA_EMIS)=Year(curdate())
GROUP BY GVA14.COD_ZONA;
しかし、それを実行しようとすると、約110秒かかり、その前に必要なプログラムがタイムアウトします。@Bluefeetの提案に基づいてインデックスを作成し、それをゾーンと呼び、GVA14.COD_ZONAを含めました。
次に何をしますか?