Función SQL ISNULL en declaraciones de casos

Función SQL ISNULL en declaraciones de casos

En este blog, analizaremos la declaración CASE que puede usar para manejar varias operaciones lógicas. También discutiremos la función SQL ISNULL que le permitirá devolver un valor de reemplazo en caso de que haya expresiones que tengan un valor NULL .

La declaración CASE y la función ISNULL son muy útiles para trabajar con códigos que requieren muchas operaciones lógicas y para el reemplazo rápido de valores fijos o especificados en una expresión.

La declaración CASE en SQL es como usar la declaración IF ELSE . Sin embargo, lo más probable es que sea similar a la instrucción SWITCH que usamos en DAX . Por otro lado, la función ISNULL es para reemplazar un valor NULL con un valor específico que desea usar.

Tabla de contenido

Uso de la declaración CASE en SQL

Supongamos que tenemos las columnas ProductName y Sales Amount .

Función SQL ISNULL en declaraciones de casos

Luego queremos crear una columna adicional llamada Descripción .

Función SQL ISNULL en declaraciones de casos

También queremos agregar declaraciones lógicas que muestren ' Barato ' si el Monto de ventas es menor o igual a 5 , y luego ' No tan barato ' entre 6 y 100 . Si el valor es superior a cien, mostrará ' Caro '.

Función SQL ISNULL en declaraciones de casos

En este ejemplo, usamos la declaración SELECT para seleccionar la columna que queremos ver. Después de eso, tenemos la instrucción CASE que contiene las operaciones lógicas que mencionamos anteriormente.

Al utilizar la declaración CASE , las declaraciones CUANDO y ENTONCES siempre se usan para indicar las operaciones lógicas que queremos implementar en la columna seleccionada. La declaración ELSE es para establecer un valor predeterminado si no se cumplieron las operaciones lógicas establecidas.

Al final de la declaración CASE , tenemos END AS y el nombre de la columna al lado. Esto creará una nueva columna llamada Descripción con valores basados ​​en las operaciones lógicas que hemos agregado en la instrucción CASE .

Utilizando la función SQL ISNULL

La función ISNULL es para verificar si hay valores NULL en una columna seleccionada y reemplazarlos con cualquier valor especificado. Ahora visualicemos que tenemos las siguientes columnas con valores NULL .

Función SQL ISNULL en declaraciones de casos

En el ejemplo anterior, todos los valores NULL se reemplazan con valores ' Desconocidos '. Las siguientes líneas de código se utilizan para crear ese ejemplo.

Función SQL ISNULL en declaraciones de casos

Al usar la función SQL ISNULL , debe comenzar seleccionando la columna MiddleName usando la instrucción SELECT .

Después de eso, debe usar la función ISNULL para verificar la columna MiddleName que se especifica dentro de los paréntesis y reemplazar cualquier valor NULL con el valor ' Desconocido '.

La función AS es para crear una nueva columna que en este caso es MiddleName_New .

Tenga en cuenta que la función ISNULL solo reemplazará los valores NULL si un determinado valor no es igual a NULL . Luego devolverá el mismo valor de la columna que especificó en la función ISNULL .

A continuación, usaré la instrucción CASE y las funciones ISNULL en SSMS para que vea cómo funciona realmente. 

Declaración de CASO en SSMS

Comencemos seleccionando la columna FirstName de Person.Person . Tenga en cuenta que en este ejemplo, no es necesario seleccionar una columna. Esto es solo para su referencia.

Función SQL ISNULL en declaraciones de casos

Después de mostrar esta columna, vamos a crear una columna que muestre valores, ya sea que el primer nombre sea Kim o no, usando la instrucción CASE . Para hacer eso, simplemente siga el ejemplo a continuación.

Función SQL ISNULL en declaraciones de casos

En el código de muestra anterior, agregamos una condición usando la instrucción CASE donde si FirstName es igual a ' Kim ', mostrará ' ' y, si no, mostrará ' No ' en su lugar.

Para este ejemplo, también creé una nueva columna llamada ' IsKim ' usando la función END AS . Vea el ejemplo a continuación para ver el resultado.

Función SQL ISNULL en declaraciones de casos

Ahora veamos otro ejemplo usando la instrucción CASE aplicando algunas condiciones en la columna TaxAmt de la tabla Sales.SalesOrderHeader .

Primero, traigamos las 100 columnas principales de Sales.SalesOrderHeader usando la siguiente línea de código y busquemos la columna TaxAmt .

Función SQL ISNULL en declaraciones de casos

Después de eso, comencemos a aplicar condiciones para la columna TaxAmt con la declaración CASE usando el ejemplo a continuación.

Función SQL ISNULL en declaraciones de casos

Similar al ejemplo anterior, comenzamos seleccionando la columna a la que queremos aplicar nuestras condiciones; en este caso, es la columna TaxAmt .

Luego, en la instrucción CASE , agregamos condiciones en las que si TaxAmt es menor o igual a 500, mostrará el valor ' Perfecto '. Si el TaxAmt es menor o igual a 2000 , entonces se mostrará el valor ' OK '.

Además, si no se cumplieron las condiciones, se mostrará el valor ' No bueno ' . Al final de la declaración, creé una nueva columna llamada TaxClass .

Función SQL ISNULL en declaraciones de casos

Así es como utilizamos la instrucción CASE en SQL . Tenga en cuenta que puede establecer tantas condiciones como desee. Solo asegúrese de usar las declaraciones CUANDO y ENTONCES , así como la función TERMINAR COMO para generar una nueva columna donde se mostrarán los resultados.

Función SQL ISNULL en SSMS

En este ejemplo, voy a usar la misma tabla del ejemplo anterior. Luego demostraré cómo puede usar esta función para reemplazar valores NULL en la columna CurrencyRateID

Función SQL ISNULL en declaraciones de casos

Después de seleccionar la tabla del ejemplo anterior, podemos ver los valores NULL en la columna CurrencyRateID . Ahora quiero reemplazar estos valores NULL con ' 1 .' Para ello, consulte el ejemplo siguiente.

Función SQL ISNULL en declaraciones de casos

Para cambiar los valores NULL en una columna específica, primero debemos seleccionar la columna que tiene los valores NULL. En este caso, es CurrencyRateID . Luego, usaremos la función ISNULL y seleccionaremos la columna que será verificada por la función ISNULL , que es CurrencyRateID .

También necesitamos declarar el valor de reemplazo que queremos usar; para este ejemplo, usé ' 1 '. Por último, agregaremos la función AS para crear una nueva columna denominada NewRate .

Como resultado, todos los valores NULL fueron reemplazados por ' 1 ' en la columna NewRate , y aquellos que no tenían un valor NULL permanecieron igual. Además, también puede cambiar un valor NULL con una columna. Puede hacerlo siguiendo el ejemplo a continuación.

Función SQL ISNULL en declaraciones de casos

Usando la misma sintaxis del ejemplo anterior, simplemente agregamos SalesOrderID junto a CurrencyRateID como nuestra referencia antes de la función ISNULL . Luego cambiamos el valor de reemplazo con SalesOrderID . Esta declaración simplemente verificará los valores NULL en CurrencyRateID y los reemplazará con los valores de la columna SalesOrderID .

Conclusión

En resumen, aprendió a usar la instrucción CASE y la función ISNULL junto con la sintaxis adecuada en SQL . También aprendió que puede incluir tantas condiciones lógicas en una instrucción CASE como desee. Solo tenga en cuenta que la declaración CASE es similar a la declaración SWITCH o IF ELSE .

Además de la función ISNULL , aprendió que hay diferentes formas de reemplazar un valor NULL al utilizar esta función, que es mediante el uso de un valor fijo o una columna.

Mis mejores deseos,

Hafiz






Time Intelligence en LuckyTemplates: cómo calcular el número de transacciones realizadas en los últimos N días

Time Intelligence en LuckyTemplates: cómo calcular el número de transacciones realizadas en los últimos N días

Descubra cómo calcular el total de transacciones realizadas en los últimos N días y obtenga información útil utilizando la inteligencia de tiempo en LuckyTemplates.

Cómo evaluar clústeres en sus datos mediante la técnica DAX en LuckyTemplates

Cómo evaluar clústeres en sus datos mediante la técnica DAX en LuckyTemplates

En este tutorial, demuestro cómo mostrar clústeres en sus datos permite extraer información valiosa usando técnicas DAX avanzadas.

¿Cuánto personal tenemos actualmente? Lógica de fechas múltiples en LuckyTemplates usando DAX

¿Cuánto personal tenemos actualmente? Lógica de fechas múltiples en LuckyTemplates usando DAX

En este tutorial, aprenderá a calcular la <strong>población actual del personal</strong> para las relaciones múltiples de la tabla de calendario mediante la función COUNTROWS y FILTER en LuckyTemplates.

Hacer una solicitud HTTP en Power Automate

Hacer una solicitud HTTP en Power Automate

Aprenda a crear una solicitud HTTP con Power Automate y cómo implementar soluciones efectivas para la automatización de tareas.

Programe un flujo de escritorio para que se ejecute en Power Automate

Programe un flujo de escritorio para que se ejecute en Power Automate

En este tutorial, aprenda cómo programar un flujo de escritorio en Power Automate para automatizar tareas en la web y su escritorio.

Power Automate Terminar Control de acción en flujos

Power Automate Terminar Control de acción en flujos

Aprenda a usar correctamente el control Terminar acción de Power Automate que termina las acciones en un flujo si no se cumple alguna de las condiciones.

Power Query: combinar archivos de varias carpetas

Power Query: combinar archivos de varias carpetas

Aprenda a combinar archivos de varias carpetas en su red, escritorio, OneDrive o SharePoint utilizando Power Query.

Tipos de flujo de Power Automate y cuándo usarlos

Tipos de flujo de Power Automate y cuándo usarlos

En este blog, analizamos las similitudes y diferencias entre los tipos de flujo de Power Automate y determinamos cuándo usar cada flujo. Encuentra la mejor opción de automatización.

Conectores de Power Automate: número, texto y fecha y hora

Conectores de Power Automate: número, texto y fecha y hora

Familiarízate con algunos conectores Power Automate integrados que transforman cadenas en otro formato: número, texto y fecha y hora.

Tutorial del analizador VertiPaq: relaciones e integridad referencial

Tutorial del analizador VertiPaq: relaciones e integridad referencial

Este tutorial detallado sobre el analizador VertiPaq en DAX Studio le enseñará cómo usar la pestaña Relaciones para optimizar su DAX y resolver problemas de integridad referencial.