problema raro al sumar

22/11/2005 - 14:38 por Aprendiz de Informatico | Informe spam
hola, quiza es un poco tonto este problema pero bueno...

la cuestion es que hago consultas y guardo ciertos valores en variables,
dentro de un stored procedure. Luego tengo que sumar todas esas variables
haciendo

set @Total = @Suma1 + @Suma2 + @Suma3

en el ejemplo este, la unica variable que tiene un valor es Suma3, las otras
2 estan "vacias" porque no habia nada que sumar en esas consultas. El
problema es que cuando hago esa suma para Total que puse mas arriba, me da
NADA, ni siquiera cero, como si fuera null o algo por el estilo, pero tendria
que dar el valor de Suma3 que es la unica que tiene algo. Aclaro que el tipo
de datos que estoy usando es numeric(10,2)

que hago para que me sume todo ?

aparentemente el problema es solo cuando hay variables que no tienen valor,
porque cuando las 3 variables Suma tienen algo, no hay problema.

:-)
 

Leer las respuestas

#1 Alejandro Mesa
22/11/2005 - 15:12 | Informe spam
Estas en lo correcto, cualquier operacion con NULL resulta en NULL y por eso
debes usar las funciones ISNULL o COALESCE para sustituir valores NULL en una
expresion dada.

set @Total = isnull(@Suma1, 0) + isnull(@Suma2, 0) + isnull(@Suma3, 0)


AMB

"Aprendiz de Informatico" wrote:

hola, quiza es un poco tonto este problema pero bueno...

la cuestion es que hago consultas y guardo ciertos valores en variables,
dentro de un stored procedure. Luego tengo que sumar todas esas variables
haciendo

set @Total = @Suma1 + @Suma2 + @Suma3

en el ejemplo este, la unica variable que tiene un valor es Suma3, las otras
2 estan "vacias" porque no habia nada que sumar en esas consultas. El
problema es que cuando hago esa suma para Total que puse mas arriba, me da
NADA, ni siquiera cero, como si fuera null o algo por el estilo, pero tendria
que dar el valor de Suma3 que es la unica que tiene algo. Aclaro que el tipo
de datos que estoy usando es numeric(10,2)

que hago para que me sume todo ?

aparentemente el problema es solo cuando hay variables que no tienen valor,
porque cuando las 3 variables Suma tienen algo, no hay problema.

:-)

Preguntas similares