sql >> Base de Datos >  >> RDS >> Sqlserver

Función COALESCE en TSQL

No estoy seguro de por qué cree que la documentación es vaga.

Simplemente revisa todos los parámetros uno por uno y devuelve el primero que es NOT NULL .

COALESCE(NULL, NULL, NULL, 1, 2, 3)
=> 1


COALESCE(1, 2, 3, 4, 5, NULL)
=> 1


COALESCE(NULL, NULL, NULL, 3, 2, NULL)
=> 3


COALESCE(6, 5, 4, 3, 2, NULL)
=> 6


COALESCE(NULL, NULL, NULL, NULL, NULL, NULL)
=> NULL

Acepta prácticamente cualquier cantidad de parámetros, pero deben ser del mismo tipo de datos. (Si no son del mismo tipo de datos, se convierten implícitamente en un tipo de datos apropiado utilizando el orden de precedencia del tipo de datos).

Es como ISNULL() pero para múltiples parámetros, en lugar de solo dos.

También es ANSI-SQL , donde-como ISNULL() no lo es.