SQL Server - Optimizar consulta

 
Vista:
sin imagen de perfil
Val: 52
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Optimizar consulta

Publicado por jose manuel (23 intervenciones) el 27/08/2016 01:18:18
tengo una consulta que quisiera optimizar, ante todo es por que me marca una division de error en cero pero no la encuentro


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
select a.*
FROM(select round(
CASE hora
WHEN '06:30:00:000' THEN (isnull(fem_ah17/2,0))*.000947
WHEN '07:00:00:000' THEN (isnull(fem_ah17/2,0))*.000947
WHEN '14:30:00:000' THEN (isnull(fem_ah17/2,0))*.000947
WHEN '15:00:00:000' THEN (isnull(fem_ah17/2,0))*.000947
ELSE (isnull(fem_ah17,0))*.000947 END /(isnull(bpw_2,1)),5) as real ,
 
CASE hora
WHEN '06:30:00:000' THEN (isnull(fem_ah17/2,0))*.000947
WHEN '07:00:00:000' THEN (isnull(fem_ah17/2,0))*.000947
WHEN '14:30:00:000'  THEN (isnull(fem_ah17/2,0))*.000947
WHEN '15:00:00:000' THEN (isnull(fem_ah17/2,0))*.000947
ELSE (isnull(fem_ah17,0))*.000947 END as dato,
 
isnull(bpw_2,0) as ton, fecha+hora as fecha,hora
from basculasreal
where fecha between @FechaI and @FechaF  and bpw_2>0 ) a where real<300  order by fecha


por su ayuda mil gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Optimizar consulta

Publicado por Isaias (1 intervención) el 29/08/2016 17:40:20
Cuando te envia un error, este, viene acompañado del NUMERO DE LINEA donde esta ocurriendo el error.

Si tu motor es SQL Server, manda tu query al servicio de TUNING ADVISOR para que te haga las recomendaciones necesarias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 52
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Optimizar consulta

Publicado por jose manuel (23 intervenciones) el 29/08/2016 22:20:41
este error es el que me manda cuando lo coloco en un SP
Msg 8134, Level 16, State 1, Procedure ssp_grafico_energia, Line 45
Error de división entre cero.

y si lo tengo en una consulta normal de SQL si me da los resultados

iIIHBKO
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar