Cita:
Empezado por Chris
COALENCE no es para mejorar el desempeño de la consulta. COALENCE es un operador seguro para evaluar Nulos. Lee: http://www.firebirdsql.org/refdocs/l...-coalesce.html
Entonces, COALENCE podría decirse que funciona así:
COALANCE(Value, Value2, Value3) equivaldrá a:
Código SQL [-]
IF (Value is not NULL) then result := Value
elseif (Value2 is not NULL) then result := Value2
elseif (Value3 is not NULL) then result := value3
...
COALENCE devolverá el primer parámetro que no sea NULL. Recuerda que, a excepción de " IS", no puedes utilizar los operadores para hacer comparaciones con NULL. Ya que el valor de NULL no está definido según el estándar SQL.
Saludos.
|
Gracias por tu comentario
Chris, conozco perfectamente como funciona
Coalesce, pero hay un problema, en consultas con muchos parámetros, las cuales deben hacerse en tablas con una gran cantidad de datos empieza a generar
Tables Scan, hace algún tiempo leí que puedes crear un índice a una tabla que puede hacer que cuando uses el
Coalesce no haga el
Table Scan y use ese índice optimizado para el
Coalesce.
Muchas gracias, Saludos.