Operaciones que involucran NULL

14/06/2005 - 18:00 por Napoleón Cabrera | Informe spam
Hola nuevamente...

Resulta que en un SP estoy haciendo la carga de diferentes datos en
variables algo así...

select @vtaAANT = (select sum(venta_real) from ventasdia where tienda =
'01' and fecha)
select @vtaAACT = (select sum(venta_real) from ventasdia where tienda =
'02' and fecha)

Hasta aquí está todo bien, el problema es que @vtaAANT o @vtaAACT pueden ser
NULL en algún momento y he visto que cualquier operación en la que
cualquiera de los dos (o "n") valores sea NULL se convierte automáticamente
en NULL, por eso llego nuevamente a la conclusión de que tengo que
"formatear" de alguna manera los valores que me devuelven los SELECT's de
más arriba. Ahora, ¿cómo lo hago?... intuyo que podría usar CONVERT...
espero puedan ayudarme!

Muchísimas gracias!

P/D: Hay algún recurso para consultar de forma rápida este tipo de
cuestiones? (la vez pasada tuve problemas similares pero con la fecha).

Preguntas similare

Leer las respuestas

#1 Maxi
14/06/2005 - 18:19 | Informe spam
Hola, primer punto, la aparicion de estas variables me hace pensar que se
aplicaran cursores con lo cual debo recormandarte este link
(http://www.configuracionesintegrale...p?articulo)5)

Luego, los nulos hay que transformarlos a algo, podria ser 0 no? entonces
podrias hacer

Isnull(variable,0)


Salu2
Maxi


"Napoleón Cabrera" <berncab*sin esto*@*ni esto*hotmail.com*ni esto*>
escribió en el mensaje news:
Hola nuevamente...

Resulta que en un SP estoy haciendo la carga de diferentes datos en
variables algo así...

select @vtaAANT = (select sum(venta_real) from ventasdia where tienda =
'01' and fecha)
select @vtaAACT = (select sum(venta_real) from ventasdia where tienda =
'02' and fecha)

Hasta aquí está todo bien, el problema es que @vtaAANT o @vtaAACT pueden
ser NULL en algún momento y he visto que cualquier operación en la que
cualquiera de los dos (o "n") valores sea NULL se convierte
automáticamente en NULL, por eso llego nuevamente a la conclusión de que
tengo que "formatear" de alguna manera los valores que me devuelven los
SELECT's de más arriba. Ahora, ¿cómo lo hago?... intuyo que podría usar
CONVERT...
espero puedan ayudarme!

Muchísimas gracias!

P/D: Hay algún recurso para consultar de forma rápida este tipo de
cuestiones? (la vez pasada tuve problemas similares pero con la fecha).


Respuesta Responder a este mensaje
#2 Alejandro Mesa
14/06/2005 - 18:20 | Informe spam
Usa la funcion isnull o coalesce.

set @vtaAANT = isnull((select sum(venta_real) from ventasdia where tienda =
'01' and fecha), 0)

o

select @vtaAANT = isnull(sum(venta_real), 0) from ventasdia where tienda =
'01' and fecha


AMB


"Napoleón Cabrera" wrote:

Hola nuevamente...

Resulta que en un SP estoy haciendo la carga de diferentes datos en
variables algo así...

select @vtaAANT = (select sum(venta_real) from ventasdia where tienda =
'01' and fecha)
select @vtaAACT = (select sum(venta_real) from ventasdia where tienda =
'02' and fecha)

Hasta aquí está todo bien, el problema es que @vtaAANT o @vtaAACT pueden ser
NULL en algún momento y he visto que cualquier operación en la que
cualquiera de los dos (o "n") valores sea NULL se convierte automáticamente
en NULL, por eso llego nuevamente a la conclusión de que tengo que
"formatear" de alguna manera los valores que me devuelven los SELECT's de
más arriba. Ahora, ¿cómo lo hago?... intuyo que podría usar CONVERT...
espero puedan ayudarme!

Muchísimas gracias!

P/D: Hay algún recurso para consultar de forma rápida este tipo de
cuestiones? (la vez pasada tuve problemas similares pero con la fecha).



Respuesta Responder a este mensaje
#3 Isaias
14/06/2005 - 18:21 | Informe spam
Existen 2 formas de hacerlo

SELECT @SUMA = ISNULL(SUM(VENTAS),0) FROM VENTAS

IF (SELECT SUM(VENTAS) FROM VENTAS) IS NULL
BEGIN
-HACES ESTO
Respuesta Responder a este mensaje
#4 Napoleón Cabrera
14/06/2005 - 18:38 | Informe spam
Hice lo siguiente:

select @vtaAANT = Isnull( (select sum(venta_real) from ventasdia where
tienda = '01' and fecha...) , 0 )

Y funciona correctamente!
Muy agradecido con todos!


"Napoleón Cabrera" <berncab*sin esto*@*ni esto*hotmail.com*ni esto*>
escribió en el mensaje news:
Hola nuevamente...

Resulta que en un SP estoy haciendo la carga de diferentes datos en
variables algo así...

select @vtaAANT = (select sum(venta_real) from ventasdia where tienda =
'01' and fecha)
select @vtaAACT = (select sum(venta_real) from ventasdia where tienda =
'02' and fecha)

Hasta aquí está todo bien, el problema es que @vtaAANT o @vtaAACT pueden
ser NULL en algún momento y he visto que cualquier operación en la que
cualquiera de los dos (o "n") valores sea NULL se convierte
automáticamente en NULL, por eso llego nuevamente a la conclusión de que
tengo que "formatear" de alguna manera los valores que me devuelven los
SELECT's de más arriba. Ahora, ¿cómo lo hago?... intuyo que podría usar
CONVERT...
espero puedan ayudarme!

Muchísimas gracias!

P/D: Hay algún recurso para consultar de forma rápida este tipo de
cuestiones? (la vez pasada tuve problemas similares pero con la fecha).


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida