Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Error de división entre cero en sentencia sql

Estas en el tema de Error de división entre cero en sentencia sql en el foro de Bases de Datos General en Foros del Web. Hola, tengo la siguiente sentencia sql: SELECT SUM(cantidad1/cantidad2) FROM tabla GROUP BY id_producto Pues me da de maravilla, el problema es que si hay alguna ...
  #1 (permalink)  
Antiguo 28/04/2005, 08:36
 
Fecha de Ingreso: marzo-2005
Mensajes: 309
Antigüedad: 19 años, 8 meses
Puntos: 1
Error de división entre cero en sentencia sql

Hola, tengo la siguiente sentencia sql:

SELECT SUM(cantidad1/cantidad2) FROM tabla
GROUP BY id_producto

Pues me da de maravilla, el problema es que si hay alguna cantidad2 con 0,
entonces me da error de división entre cero. Cómo puedo hacer para controlar
que si cantidad2 tiene 0, entonces no me haga la división para que no me de error,
y mostrar simplemete 0 en pantalla?. Espero que me puedan ayudar.
  #2 (permalink)  
Antiguo 28/04/2005, 12:19
Avatar de cableh  
Fecha de Ingreso: diciembre-2004
Mensajes: 54
Antigüedad: 19 años, 11 meses
Puntos: 0
Una solución enrevesada en ms sql server:
select sum((case cantidad2 when 0 then 0 else cantidad1 end)/(case cantidad2 when 0 then 1 else cantidad2 end)) from tabla

Si te da igual no sacar los registros con cantidad2=0
SELECT SUM(cantidad1/cantidad2) FROM tabla where cantidad2<>0
GROUP BY id_producto

Salu2.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 14:20.