NULL's como cero en SELECT
Saludos...
Tengo una consulta SELECT donde un campo tipo FLOAT me devuelve NULL en algunos casos, pero necesito utilizar este valor para unirlo en otra consulta y realizar una operación matemática, pero si realizo una operación con un NULL el resultado me da NULL, y quisiera entonces que NULL me lo tomara como cero, ahora no tengo el código SQL, es que me lo consultó una amiga, pero es algo más o menos asi:
El caso es que si en me devuelve NULL y en Tabla1.OtroCampoFloat aunque tenga un valor, esta suma me devuelve NULL. Quisiera si se puede que el NULL del SELECT SUM me lo tomara como cero para que al realizar la suma no se perdiera el valor de Tabla1.OtroCampoFloat. Ojalá me explique, porque creo que ni yo me entiendo. Por su ayuda gracias desde ya. |
Si estan usando FB 1.5 o superior, pueden hacer uso de la función coalesce. ;)
|
Cita:
Estoy usando Interbase 6.0 y Delphi 7 sobre WinXP Pro |
Saludos,
El maestro Jhonny, quiso decir que si Faust está usando FireBird 1.5 o superior, puede hacer algo como:
No recuerdo si en IB 6 se podría, pero puede probarlo... |
Cita:
¿alguna otra opción queda? ¿Usando un Stored Procedure? |
Saludos.
Estuve buscando en el Language Reference de Interbase 6, no encontré esta función, al parecer tendrás que realizarlo desde un Stored Procedure.
|
tambien puedes usar la funcion iff, si existe en tu caso
(if not null then arg1 else arg2)
|
En vista de que no existe la funcion podrias utilizar si la condicion del valor es que sea >= 0 (positivo) la funcion ABS.
|
mira esta página http://www.udf.adhoc-data.de/documen...ng_inhalt.html
|
resp
puedes usar case
|
La franja horaria es GMT +2. Ahora son las 18:26:57. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi