Hola a todos.
Pues como el nombre lo indica, me pueden dar sugerencias para tunnear este query
Código SQL:
Ver originalSELECT CASE
WHEN DG.TotDiasDEvengar = 0 THEN
0
ELSE
DG.PrecioImporte * (DG.CEPrograma_Ene / DG.TotDiasDEvengar)
END AS Imp_M01_Ene
, CASE
WHEN DG.TotDiasDEvengar = 0 THEN
0
ELSE
DG.PrecioImporte * (DG.CEPrograma_Feb / DG.TotDiasDEvengar)
END AS Imp_M02_Feb
, CASE
WHEN DG.TotDiasDEvengar = 0 THEN
0
ELSE
DG.PrecioImporte * (DG.CEPrograma_Mar / DG.TotDiasDEvengar)
END AS Imp_M03_Mar
, CASE
WHEN DG.TotDiasDEvengar = 0 THEN
0
ELSE
DG.PrecioImporte * (DG.CEPrograma_Abr / DG.TotDiasDEvengar)
END AS Imp_M04_Abr
, CASE
WHEN DG.TotDiasDEvengar = 0 THEN
0
ELSE
DG.PrecioImporte * (DG.CEPrograma_May / DG.TotDiasDEvengar)
END AS Imp_M05_May
, CASE
WHEN DG.TotDiasDEvengar = 0 THEN
0
ELSE
DG.PrecioImporte * (DG.CEPrograma_Jun / DG.TotDiasDEvengar)
END AS Imp_M06_Jun
, CASE
WHEN DG.TotDiasDEvengar = 0 THEN
0
ELSE
DG.PrecioImporte * (DG.CEPrograma_Jul / DG.TotDiasDEvengar)
END AS Imp_M07_Jul
, CASE
WHEN DG.TotDiasDEvengar = 0 THEN
0
ELSE
DG.PrecioImporte * (DG.CEPrograma_Ago / DG.TotDiasDEvengar)
END AS Imp_M08_Ago
, CASE
WHEN DG.TotDiasDEvengar = 0 THEN
0
ELSE
DG.PrecioImporte * (DG.CEPrograma_Sep / DG.TotDiasDEvengar)
END AS Imp_M09_Sep
, CASE
WHEN DG.TotDiasDEvengar = 0 THEN
0
ELSE
DG.PrecioImporte * (DG.CEPrograma_Oct / DG.TotDiasDEvengar)
END AS Imp_M10_Oct
, CASE
WHEN DG.TotDiasDEvengar = 0 THEN
0
ELSE
DG.PrecioImporte * (DG.CEPrograma_Nov / DG.TotDiasDEvengar)
END AS Imp_M11_Nov
, CASE
WHEN DG.TotDiasDEvengar = 0 THEN
0
ELSE
DG.PrecioImporte * (DG.CEPrograma_Dic / DG.TotDiasDEvengar)
END AS Imp_M12_Dic
, CASE
WHEN DG.TotDiasDEvengar = 0 THEN
0
ELSE
DG.PrecioImporte * (DG.CEPrograma_Tran1 / DG.TotDiasDEvengar)
END AS Imp_M13_EneAs
, CASE
WHEN DG.TotDiasDEvengar = 0 THEN
0
ELSE
DG.PrecioImporte * (DG.CEPrograma_Tran2 / DG.TotDiasDEvengar)
END AS Imp_M14_FebAs
La verdad no me surge ninguna idea para reducir la carga al servidor, esto es un fragmento del código, se hizo así para que se generen muchas columnas a partir de una decisión pero la verdad no se me ocurre mucho.
Con una sola decisión me refiero a que este código es el mismo para todas las decisiones.
Código SQL:
Ver originalCASE WHEN DG.TotDiasDEvengar = 0 THEN 0 ELSE ...
Agradezco de antemano su visita y consejo.
Saludos