Ver Mensaje Individual
  #5  
Antiguo 08-11-2006
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Reputación: 21
gluglu Va por buen camino
Tengo que reconocerle una vez más a Román por su maravillosa sabiduría !

No conocía la función COALESCE, ni tampoco NULLIF que he observado vienen descritas en un fichero adicional de Interbase 7.5 como novedades y que uno se mira y lee al principio pero después no se puede acordar de todo, y menos de cosas que al principio a uno le parecen sin mayor trascendencia

Efectivamente, tal y como anticipó Román, COALESCE no permite su utilización en 'Order by'.

Intenté algo así como
Código SQL [-]
Select ... COALESCE(CODIGO,' ') as COA_CODIGO ...
order by CATEG, SUBCATEG, COA_CODIGO
y me salta con que 'datatype not supported for arithmetic'.

Finalmente he acudido a la cláusula CASE de Interbase (cuya existencia también desconocía ) y lo he solucionado finalmente de esta manera :

Código SQL [-]
Select CATEG, SUBCATEG,
Case When CODIGO is Null then ' ' else CODIGO End as AUX_CODIGO
from TABLE
order by CATEG, SUBCATEG, AUX_CODIGO

Mil gracias de nuevo por las ayudas prestadas.
__________________
Piensa siempre en positivo !
Responder Con Cita