SQL: no condicional

Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.

SQL: no condicional

Este tutorial de SQL explica cómo usar SQL incondicional Con sintaxis y ejemplos.

describir

Las condiciones SQL NOT (a veces denominadas operador NOT) se utilizan para negar condiciones en la cláusula WHERE de una declaración SELECT, INSERT, UPDATE o DELETE.

sintaxis

La sintaxis de una condición NOT en SQL es:

NOT condition

parámetro o parámetro

Condición Esta es una condición negativa. Los registros que se incluirán en el conjunto de resultados deben cumplir la condición opuesta.

Ejemplo de DDL/DML

Si desea seguir este tutorial, obtenga DDL para crear las tablas y DML para completar los datos. ¡Entonces pruebe los ejemplos en su propia base de datos!

Ejemplo: uso de NOT en una condición IN

Primero veamos cómo se puede usar NOT en una condición IN. Cuando usamos el operador NOT en una condición IN, creamos una condición NOT IN. Esto probará si la expresión no está en la lista.

En este ejemplo, tenemos una tabla llamada productos con los siguientes datos:

ID del Producto nombre del producto categoria ID
1 pera 50
2 plátano 50
3 mandarina 50
4 manzana 50
5 pan de molde 75
6 jamón 25
7 kleenex nulo

Ingrese la siguiente instrucción SQL:

SELECT *
FROM products
WHERE product_name NOT IN ('Pear', 'Banana', 'Bread');

Se seleccionarán 4 registros. Estos son los resultados que deberías ver:

ID del Producto nombre del producto categoria ID
3 mandarina 50
4 manzana 50
6 jamón 25
7 kleenex nulo

Este ejemplo devuelve todas las filas de la tabla de productos donde nombre_producto no es Pera, Plátano o Pan.A veces es más eficiente listar los valores que hiciste No quiere, no los valores que quiere.

Equivalente a la siguiente instrucción SQL:

SELECT *
FROM products
WHERE product_name  'Pear'
AND product_name  'Banana'
AND product_name  'Bread';

Ejemplo: uso de NOT con la condición IS NULL

Cuando utiliza el operador NO con una condición ES NULO, crea una condición NO ES NULO que le permite probar valores que no son NULOS. Este es el operador de comparación recomendado para usar en SQL cuando se prueban valores que no son NULL. Veamos un ejemplo que muestra cómo usar la condición NO ES NULO en una consulta.

Usando el mismo producto que el ejemplo anterior:

ID del Producto nombre del producto categoria ID
1 pera 50
2 plátano 50
3 mandarina 50
4 manzana 50
5 pan de molde 75
6 jamón 25
7 kleenex nulo

Ingrese la siguiente instrucción SQL:

SELECT *
FROM products
WHERE category_id IS NOT NULL;

Se seleccionarán 6 registros. Estos son los resultados que deberías ver:

ID del Producto nombre del producto categoria ID
1 pera 50
2 plátano 50
3 mandarina 50
4 manzana 50
5 pan de molde 75
6 jamón 25

Este ejemplo devuelve todos los registros en la tabla de productos donde customer_id no contiene un valor NULL.

Ejemplo: uso de NOT con condiciones LIKE

A continuación, veamos un ejemplo de cómo usar el operador NOT con la condición LIKE.

En este ejemplo, tenemos una tabla llamada proveedores con los siguientes datos:

Identificación del proveedor Nombre del proveedor Ciudad Expresar
100 microsoft Redmond Washington
200 Google paisaje de la cima de la montaña California
300 Oráculo ciudad de secoya California
400 Kimberly Clark Owen Texas
500 Alimentos Tyson Springdale Arkansas
600 sc johnson Racine el estado de wisconsin
700 Alimentos Dole pueblo del lago oeste California
800 flores comida thomasville Georgia
900 Artes electrónicas ciudad de secoya California

Busquemos todos los registros en la tabla de proveedores donde se encuentra el nombre del proveedor No Contiene la letra “o”. Ingrese la siguiente instrucción SQL:

SELECT *
FROM suppliers
WHERE supplier_name NOT LIKE '%o%';

Se seleccionará 1 registro. Estos son los resultados que deberías ver:

Identificación del proveedor Nombre del proveedor Ciudad Expresar
400 Kimberly Clark Owen Texas

En este ejemplo, solo hay un registro en la tabla de proveedores donde el nombre del proveedor no contiene la letra “o”.

Ejemplo: uso de NOT con la condición BETWEEN

El operador NOT también se puede combinar con una condición BETWEEN para crear una condición NOT BETWEEN. Exploremos un ejemplo que muestra cómo usar la condición NOT BETWEEN en una consulta.

En este ejemplo, tenemos una tabla llamada clientes con los siguientes datos:

Identificación del cliente apellido nombre sitio favorito
4000 jackson José Red de Ciencia y Tecnología
5000 Herrero simple digminecraft.com
6000 Ferguson samantha granactividad.com
7000 Reynolds Alan revisatumath.com
8000 anderson Página nulo
9000 Johnson Derek Red de Ciencia y Tecnología

Ingrese la siguiente instrucción SQL:

SELECT *
FROM customers
WHERE customer_id NOT BETWEEN 5000 AND 8000;

Se seleccionarán 2 registros. Estos son los resultados que deberías ver:

Identificación del cliente apellido nombre sitio favorito
4000 jackson José Red de Ciencia y Tecnología
9000 Johnson Derek Red de Ciencia y Tecnología

Esto devolverá todas las filas donde está customer_id No Entre 5000 y 8000, ambos inclusive. Será equivalente a la siguiente sentencia SELECT:

SELECT *
FROM customers
WHERE customer_id < 5000
OR customer_id > 8000;

Ejemplo: uso de NOT con la condición EXISTS

Finalmente, las condiciones NOT se pueden combinar con las condiciones EXISTS para crear condiciones NOT EXISTS. Veamos un ejemplo de cómo usar la condición NO EXISTE en SQL.

En este ejemplo, tenemos una tabla llamada clientes con los siguientes datos:

Identificación del cliente apellido nombre sitio favorito
4000 jackson José Red de Ciencia y Tecnología
5000 Herrero simple digminecraft.com
6000 Ferguson samantha granactividad.com
7000 Reynolds Alan revisatumath.com
8000 anderson Página nulo
9000 Johnson Derek Red de Ciencia y Tecnología

También existe una tabla llamada pedidos con los siguientes datos:

Solicitar ID Identificación del cliente fecha de orden
1 7000 2016/04/18
2 5000 2016/04/18
3 8000 2016/04/19
4 4000 2016/04/20
5 nulo 2016/05/01

Ingrese la siguiente instrucción SQL:

SELECT *
FROM customers
WHERE NOT EXISTS
  (SELECT * 
   FROM orders
   WHERE customers.customer_id = orders.customer_id);

Se seleccionarán 2 registros. Estos son los resultados que deberías ver:

Identificación del cliente apellido nombre sitio favorito
6000 Ferguson samantha granactividad.com
9000 Johnson Derek Red de Ciencia y Tecnología

Este ejemplo devolverá todos los registros en la tabla de clientes. No Un registro en la tabla de pedidos para un customer_id determinado.