[DISC] problema raro al sumar

22/11/2005 - 17:06 por Carlos Sacristán | Informe spam
La respuesta a la pregunta de "Aprendiz de Informatico" ya la dieron
correctamente tanto Alejandro como Gustavo, lo que ocurre es que cuando
surgen temas de este tipo siempre me asalta la misma duda:

¿qué opináis sobre el uso de NULL? Gente como Joe Celko no está en
absoluto de acuerdo, pero me gustaría saber vuestras propias experiencias y
opiniones


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Aprendiz de Informatico" <AprendizdeInformatico@discussions.microsoft.com>
escribió en el mensaje
news:696DF00C-F8A7-4F23-9F2F-CB459D21FE1D@microsoft.com...

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 - 17:39 | Informe spam
Carlos,

Por mi parte te dire que a pesar de que al permitir valores NULL en ciertas
columnas trae consigo y incremento en las lineas de codigo necesarias para
ciertas operaciones, prefiero usar NULL cuando en realidad el valor es
desconocido. Por ejemplo:

Que ponemos en la columna (ultima_vez_que_se_actualizo datetime) cuando
insertamos un registro por primera vez?

Fecha_ultima_visita_al_doctor datetime, si la persona nunca ha estado en una
consulta anteriormente?

Hay casos en los que yo prefiero usar NULL, pero tambien trato de evitar que
columnas con dominio cerrado puedan contener este valor, por ejemplo:

- estado_civil
- sexo
- fecha_de_nacimiento
- etc.

y de vez en cuando (sobre todo en modelos dimensionales) tambien hago uso de
puntos de referencia como 'N/A' u otro valor por defecto.

La pregunta es buena, TO NULL OR NOT TO NUL?

Mi respuesta es "depende".

Saludos,


AMB


"Carlos Sacristán" wrote:

La respuesta a la pregunta de "Aprendiz de Informatico" ya la dieron
correctamente tanto Alejandro como Gustavo, lo que ocurre es que cuando
surgen temas de este tipo siempre me asalta la misma duda:

¿qué opináis sobre el uso de NULL? Gente como Joe Celko no está en
absoluto de acuerdo, pero me gustaría saber vuestras propias experiencias y
opiniones


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Aprendiz de Informatico"
escribió en el mensaje
news:
> 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