En este artículo, veremos cómo usar valores NULL dentro de la cláusula NOT IN en SQL. NULL tiene un estado especial en SQL. Representa la ausencia de valor, por lo que no se puede utilizar para comparar. Si lo usa para comparar, siempre devolverá NULL.
Para usar el valor NULL en la cláusula NOT IN, podemos hacer una subconsulta separada para incluir valores NULL .
Haga una cláusula where separada para NULL como:
Consulta:
WHERE value IS NULL;
Paso 1: Creación de la base de datos
Use la siguiente instrucción SQL para crear una base de datos llamada geeks;
Consulta:
CREATE DATABASE geeks;
Paso 2: Uso de la base de datos
Use la siguiente instrucción SQL para cambiar el contexto de la base de datos a geeks:
Consulta:
USE geeks;
Paso 3: creación de tablas
Tenemos la siguiente demo_table en la base de datos de nuestro geek.
Consulta:
CREATE TABLE demo_table( NAME VARCHAR(20), GENDER VARCHAR(20), AGE INT, CITY VARCHAR(20) );
Paso 4: Insertar datos en una tabla
Consulta:
INSERT INTO demo_table VALUES ('ROMY KUMARI', 'FEMALE', NULL, 'NEW DELHI'), ('PUSHKAR JHA', 'MALE',24, 'NEW DELHI'), ('RINKLE ARORA', 'FEMALE',23, 'PUNJAB'), ('AKASH GUPTA', 'MALE', NULL, 'UTTAR PRADESH'), ('NIKHIL KALRA', 'MALE', 23, 'PUNJAB'), ('SHALINI JHA','FEMALE', 22, 'DELHI');
Paso 5: Ver datos de la tabla
Consulta:
SELECT * FROM demo_table;
Producción:
Paso 6: uso de valores NULL en NOT NULL
Para la demostración, devolveremos los valores de la tabla cuya EDAD no es un valor NULL.
Consulta:
SELECT * FROM demo_table WHERE AGE NOT IN (SELECT AGE WHERE AGE IS NULL);
Producción:
Si desea agregar valores en la cláusula NOT IN, defina una cláusula NOT IN separada con el operador AND. Si agrega el valor dentro de la misma cláusula NOT IN, devolverá NULL.
Consulta:
SELECT * FROM demo_table WHERE AGE NOT IN ((SELECT AGE WHERE AGE IS NULL),24);
Producción:
Mesa vacía devuelta.
La forma correcta de agregar otros valores en la cláusula NOT IN con valores NULL:
Consulta:
SELECT * FROM demo_table WHERE AGE NOT IN (SELECT AGE WHERE AGE IS NULL) and AGE NOT IN (24);
Producción:
Publicación traducida automáticamente
Artículo escrito por romy421kumari y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA