FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Duda sobre COALESCE
Estoy realizando varias sentencias SQL en firebird y me estoy percatando que cuando tomo las sumas de X campo(s) con COALESCE y SUM me da diferencias, por ejemplo:
Buscando el objetivo de COALESCE, me percato que los valores nulos los convierte al valor donde se le especifica en el segundo parámetro COALESCE(Valor,0) en este caso es un CERO. Cual es la forma más correcta de usar el Coalesce con el SUM ???? |
#2
|
||||
|
||||
Pues a mi tambien me paso algo similar y decidi hacerlo de la segunda manera (Es decir el coalesce dentro del sum), ya que en algunas ocaciones al encontrar algun valor null no me hacia la suma correctamente
|
#3
|
||||
|
||||
mmmm
Haciendo pruebas he llegado a la conclusión de que dejando así:
COALESCE((SUM(CAMPO),0) Asi si me toma las SUMAS y si lo dejo ala inversa me salen los importes en CERO. Aparentemente debería de ser SUM(COALESCE(CAMPO,0)) Que Raro!!!! |
#4
|
||||
|
||||
No lo veo raro, al contrario creo que tu descubrimiento es como debe de ser...
Haciendo recapitulación, la funcion de agregado Sum solo suma los elementos que son distintos de Null, siendo congruente porque no puede sumar un valor desconocido, tan es asi como que cuando aplicas un sum a una columna donde todos los registros valen null el resultado de la suma es null, porque es como decir, sumar un conjunto de Noseques pues me da un noseque... por ese comportamiento de evitar los valores nulos no tiene caso usar el coalesce dentro de la funcion de agregado, asi que si lo que quieres es que no te muestre el valor nul al final del calculo ahi si es valido usar el coalesce para que en caso de que la suma no este definida entonces si mejor muestre un valor cero.
__________________
"Lo mejor de no saber hacer nada es que se tiene mucho tiempo libre."
|
#5
|
||||
|
||||
ok
Gracias... Que tenga buen día.
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Duda sobre With | lucasarts_18 | Varios | 6 | 26-08-2005 20:44:08 |
Algo sobre COALESCE | jwmoreira | Firebird e Interbase | 1 | 08-03-2005 21:23:20 |
Algo como NVL o COALESCE | jwmoreira | MS SQL Server | 4 | 07-03-2005 22:57:48 |
Duda sobre BDE vs IBX | ESA | Firebird e Interbase | 3 | 04-03-2004 18:20:07 |
Duda sobre ADO | Omar Alejandro | Conexión con bases de datos | 7 | 31-05-2003 20:52:58 |
|