PostgreSQL: Usando cláusulas NULL y No NULL

Los valores desconocidos de la tabla de la base de datos son tratados de manera diferente por SQL. Cuando uno o más campos de una tabla necesitan estar en blanco, la palabra clave NULL se usa en el momento de la creación de la tabla y el valor NULL se puede usar para seleccionar, insertar o actualizar datos de la tabla. El valor NULO no indica valor cero o vacío. Se utiliza principalmente para ese campo en el que falta el valor, se desconoce o no se aplica ningún valor. Pero si cualquier campo de una tabla necesita establecer obligatorio, entonces debe usar la palabra clave NOT NULL durante el momento de la creación de la tabla. En este tutorial se muestra cómo usar cláusulas NULL y NO NULL en PostgreSQL para ejecutar instrucciones SQL select, insert, update y delete.

Crear tabla con NULL y not NULL

CREAR TABLA de empresa
( company_id int not NULL PRIMARY KEY,
nombre varchar(40) not NULL,
dirección varchar(150),
teléfono char(20),
país varchar(50),
website_url varchar(50) NULL );

CREAR elementos DE TABLA
(item_id SERIAL,
name varchar(40) DEFAULT(‘No asignar’),
quantity INT NULL,
company_id INT,
CLAVE PRIMARIA (item_id),
CLAVE FORÁNEA(company_id) ) );

Insertar algunos Datos en tablas:

Insertar en la tabla de la empresa:

INSERTAR EN la empresa (id de la empresa, nombre, dirección, teléfono, país, url del sitio web)
VALORES (1, ‘Samsung’, ‘ 123….’,’+337277888′, ‘Corea’, ‘www.samsung.com’);
INSERTAR EN la empresa (id de la empresa, nombre, dirección, teléfono, país, url del sitio web)
VALORES (2, ‘Symphony’, ‘ 67 / A ….», «+42343567», «Chaina», «www.symphony.com’);
INSERTAR EN la empresa (id de la empresa, nombre, dirección, teléfono, país)
VALORES (3, ‘LG’, ‘ 45 / B ….’, «, ‘Japón’);

Insertar en la tabla de elementos:

INSERTAR EN los elementos (nombre, cantidad, company_id)
VALUES ( ‘LG 122’, 4000,3 );
INSERT INTO elementos (nombre, cantidad, company_id)
VALUES ( ‘Samsung 460’, 7000, 1 );
INSERTAR EN elementos (nombre, cantidad, id de la empresa)
VALORES («Symphony E80′, 2200,2 );

Ejemplo-1: Usando NULL y NOT NULL en SELECT Query

a) NULL

La siguiente consulta recuperará todos los datos de nombre y dirección de la tabla de la empresa donde el valor website_url es null. Solo hay un registro donde el valor website_url es NULL.

SELECCIONE nombre, dirección
DE la empresa
DONDE website_url es NULO;

b) NOT NULL

La salida de NOT NULL es opuesta a NULL. La siguiente consulta de selección devolverá todos los registros de la tabla de empresa donde el campo website_url contenga datos.

SELECCIONE nombre, teléfono
DE la empresa
DONDE website_url NO ES NULO;

Ejemplo-2: Usando NULL o NOT NULL en INSERTAR consulta

La siguiente consulta insertará el valor company_id de la tabla de empresa a la tabla de elementos que no tiene valor website_url. Hay un registro en company donde website_url es NULL. Por lo tanto, se insertará un registro después de ejecutar la consulta.

Insertar en elementos
(company_id)
SELECCIONAR company_id
DE company
DONDE website_url es NULO;

Ejemplo-3: Uso de NULL en la consulta de ACTUALIZACIÓN

campo de nombre se actualizará el valor de la tabla elementos cuyo registro contenga NULL en el campo cantidad. De acuerdo con los datos, se actualizará un registro después de ejecutar la consulta.

ACTUALIZAR elementos
ESTABLECER nombre = ‘Nuevo valor’
DONDE la cantidad ES NULA;

Ejemplo-4: Usando NULL o NOT NULL en la consulta de actualización

La siguiente consulta eliminará registros de la tabla de elementos donde el valor de cantidad es NULO. Solo hay un registro en la tabla de elementos donde el valor de la cantidad es NULO. Por lo tanto, se eliminará un registro después de ejecutar la consulta.

ELIMINAR de elementos
DONDE la cantidad es NULA;

Puede aplicar cláusulas NULL y NOT NULL con la cláusula WHERE para ejecutar cualquier consulta basada en la tabla si la tabla contiene cualquier valor NULL. Pero el valor NULO y la cadena vacía no son idénticos. Si crea cualquier campo de la tabla sin la opción NULL y mantiene los datos vacíos en ese campo, la cláusula NULL no funcionará para ese campo. Puede aplicar la cláusula NULL a cualquier tabla en función de la estructura de la tabla.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.