GeeksforGeeks

En este artículo, veremos cómo usar valores NULOS 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 usar para la comparación. Si lo utiliza para la comparación, siempre devolverá NULL.

Para usar el valor NULO en la cláusula NOT IN, podemos hacer una subconsulta separada para incluir valores NULOS.

Atención del lector! No dejes de aprender ahora. Aprenda SQL para entrevistas usando el curso SQL de GeeksforGeeks.

Haga una cláusula where separada para NULL como:

Consulta:

WHERE value IS NULL;

Paso 1: Creación de la base de datos

Utilice la siguiente instrucción SQL para crear una base de datos llamada geeks;

Query:

CREATE DATABASE geeks;

Paso 2: Uso de la base de datos

Utilice 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 nuestra base de datos de 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;

Salida:

Paso 6: el Uso de los valores NULL NO NULL

Para la demostración, vamos a volver a los valores de la tabla cuya EDAD no valores NULOS.

Consulta:

SELECT * FROM demo_table WHERE AGE NOT IN (SELECT AGE WHERE AGE IS NULL);

Salida:

Si desea agregar valores en la cláusula NO está EN, definir por separado NO EN la cláusula 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);

Producto:

Regresó tabla vacía.

La forma correcta de agregar otros valores NO EN la Cláusula con valores NULL:

Consulta:

SELECT * FROM demo_table WHERE AGE NOT IN (SELECT AGE WHERE AGE IS NULL) and AGE NOT IN (24);

Salida:

las Etiquetas de Artículo :

SQL

Práctica de Etiquetas :

Leave a Reply