Hola invitado         31 Jul, 2010 - 07:41
Menú principal
 
Ads
 
Patrocinadores
 
Anuncios
 
© 2009 PortalFox
Traducir la función NVL2 de Oracle a Microsoft SQL Server (Christof Wollenhaupt) lecturas 1827
 Enviado por amby en Viernes, 07 Septiembre, 2007
Artículos En este caso Christof comenta una información obtenida en Technet sobre este tema.

Traducir la función NVL2 de Oracle a Microsoft SQL Server

Artículo original: Translating Oracle’s NVL2 function to Microsoft SQL Server
http://www.foxpert.com/knowlbits_200703_2.htm
Autor: Christof Wollenhaupt (http://www.foxpert.com/knowlbits.htm)
Traducido por: Ana María Bisbé York (amby@telefonica.net)
Para: PortalFox (http://www.portalfox.com)


En esta dirección de Technet, Microsoft expuso que la traducción adecuada para la función NVL2 de Oracle es:

NVL2 (Salary, Salary*2, 0)

Debería ser:

CASE SALARY
WHEN null THEN 0
ELSE SALARY*2
END

Ellos acertaron en la parte de Oracle, pero fallaron en la sintaxis de su propio servidor. La forma correcta de utilizar WHEN con valores NULL es:

CASE
WHEN SALARY IS NULL THEN 0
ELSE SALARY*2
END

En Microsoft SQL Server usted utiliza IS NULL o IS NOT NULL para verificar si existe NULL. La expresión original debería devolver siempre el valor desde a parte ELSE ya que la condición SALARY = NULL nunca será verdadera.


 Versión imprimible  
Traducir la función NVL2 de Oracle a Microsoft SQL Server (Christof Wollenhaupt) | Entrar/Crear una cuenta | 0 Comentarios
Los comentarios son propiedad de sus respectivos autores.
No somos responsables de su contenido.



Todas las marcas y los logos utilizados en este sitio son propiedad de sus respectivos dueños.
Los artículos, noticias y comentarios son propiedad y responsabilidad de sus respectivos autores.
Copyright © 2000-2010 PortalFox. Todos los derechos reservados.