Un valor nulo en el servidor SQL se refiere a una columna cuyo valor falta o desconocido. Al trabajar con bases de datos, a menudo encontrará valores nulos, lo que dificulta los datos de funcionar. Puede resolver esto eliminando los valores nulos o reemplazándolos con un valor específico.
Este artículo cubrirá una función incorporada en SQL Server que le permite reemplazar los valores nulos con un valor establecido.
Uso básico
La función SQL Server isNull devuelve un valor especificado si una expresión es un valor nulo o devuelve la expresión de lo contrario.
El siguiente fragmento muestra la sintaxis para la función isnull.
isnull (expresión, reemplazar_value);La función toma dos argumentos:
La función convierte el tipo de datos del Value reemplazar al tipo de datos de la expresión si son de diferentes tipos. Por lo tanto, asegúrese de que el tipo de reemplazar_value pueda convertirse en el tipo de expresión.
Ejemplos de SQL Server isNull ()
Veamos algunos ejemplos de cómo usar la función isnull.
Ejemplo 1:
El ejemplo a continuación usa la función isNull () para devolver un argumento si la expresión proporcionada es nula.
Seleccione isnull (nulo, 'no nulo');La consulta anterior debe devolver la cadena 'no nula' ya que el primer argumento es un valor nulo.
Ejemplo 2:
Como se mencionó anteriormente, la función ISNULL devuelve el valor de reemplazo si la expresión es nula. Sin embargo, si no es nulo, la función devuelve el valor de la expresión.
Considere el ejemplo que se muestra a continuación:
Seleccione Isnull (100, 200);La consulta debe devolver el valor de la expresión, en este caso, 100, ya que no se evalúa a un valor nulo.
Ejemplo 3:
También puede usar la función isnull con variables. Considere la instrucción SQL de ejemplo que se muestra a continuación:
Declarar @Expression varchar (50);En este ejemplo, el código anterior debe devolver el valor almacenado por la variable @Replacation.
Ejemplo 4:
También podemos usar la función isnull para reemplazar los valores nulos en una tabla. Esto puede ser útil cuando necesita realizar actualizaciones en una tabla sin hacer que los cambios sean permanentes en la base de datos.
Por ejemplo, considere la tabla de los clientes de la muestra de salesdb. Contiene valores nulos en la columna Middleinitial.
Seleccione Top 10 * de los clientes;Podemos reemplazar los valores nulos con N/A usando la función ISNull, como se muestra en el código de ejemplo a continuación:
Seleccione Top 10 FirstName, IsNull (MiddleInitial, 'N/A') como inicial, LastName de los clientes;La consulta debe devolver los registros donde el valor de la columna Middleinitial se reemplaza con la cadena "n \ a".
Una salida de ejemplo es como se muestra:
Ejemplo 5:
La función isnull viene en la mano cuando necesita realizar operaciones como un promedio de un conjunto de valores.
Por ejemplo, podemos usar la función isnull para reemplazar los valores nulos con 0 y realizar un promedio.
Considere el ejemplo a continuación:
Seleccione AVG (IsNull (Price, 0)) como promedio_price de los productos;El ejemplo anterior debe devolver el promedio de todos los valores en la columna de precios de la base de datos. La función debe reemplazar todos los valores nulos en la columna con un 0, lo que le permite realizar cálculos casi precisos.
precio promedioIsnull vs. ES NULO
En SQL Server, hay una función llamada Is Null. A diferencia de la función isnull (), determina si una expresión es nula. Esto significa que devuelve un valor booleano en lugar de una expresión.
El ejemplo a continuación muestra el uso de la instrucción NULL en SQL Server.
Seleccione Top 10 * de los clientes donde MiddleInitial es nulo;Dado que la declaración es nula devuelve un valor booleano, el servidor SQL lo usa para obtener todas las filas donde la condición es verdadera.
Un resultado de ejemplo es como:
Conclusión
En esta guía, entendió cómo trabajar con la función SQL Server isNull () para evaluar y reemplazar una expresión nula.