PDA

Ver la Versión Completa : consulta omite null


pmtzg
08-11-2012, 00:35:37
hola amigos
deseo hacer una consulta con ustedes

estoy haciendo consulta en una base de datos firebird 2.5

y hago la siguiente instruccion :

(select sum(importe) from cuem where trim(no_factura) = trim(facm.cve_doc)) -
(select sum(importe) from cued where trim(no_factura) = trim(facm.cve_doc))

pero por lo regular en la segunda tabla que comparo no hay campos que cumpla con el requisito y me manda null

es decir cuem.importe = 1000 y cued.importe = null
operacion:
1000-null = null

como puedo realizar mi consulta que al realizarla no me de null en su totalidad

si no me de el importe 1000 y me arroje el dato

mil gracias por su apoyo

Casimiro Notevi
08-11-2012, 00:39:34
Si no he entendido mal, debes usar coalesce

Maniches
08-11-2012, 01:06:46
Intenta con:


(select coalesce(sum(importe),0) from cuem where trim(no_factura) = trim(facm.cve_doc)) -
(select coalesce(sum(importe),0) from cued where trim(no_factura) = trim(facm.cve_doc))


Confirmarme si te funciono.

Saludos.

Maniche qP:-)

TOPX
08-11-2012, 15:02:25
... Y como lectura complementaria:


Guía de NULL en FireBird (http://www.firebirdsql.org/pdfmanual/Firebird-Null-Guide-Spanish.pdf)


-

Maniches
08-11-2012, 15:20:26
... Y como lectura complementaria:


Guía de NULL en FireBird (http://www.firebirdsql.org/pdfmanual/Firebird-Null-Guide-Spanish.pdf)


-
Gracias por lo compartido amigo Topx.

Saludos.

pmtzg
09-11-2012, 02:53:10
mil gracias por sus aportes
no he probado coalese
pero me funcionoo de esta manera


(
(select sum(importe) from cuem where trim(no_factura) = trim(facm.cve_doc)) -
(select sum(importe) from cued where trim(no_factura) = trim(facm.cve_doc)) <> 0
OR
(select sum(importe) from cuem where trim(no_factura) = trim(facm.cve_doc)) -
(select sum(importe) from cued where trim(no_factura) = trim(facm.cve_doc)) is null
)

saludos