PostgreSQL IN, no IN con ejemplos

¿Qué es el PostgreSQL En ?

El operador IN se utiliza en una cláusula WHERE que permite comprobar si un valor está presente en una lista de otros valores. OperaLa función ayuda a reducir la necesidad de múltiples condiciones OR en declaraciones SELECT, UPDATE, INSERT o DELETE.

Sintaxis

El operador IN toma la siguiente sintaxis:

value IN (value_1, value_2, ...)

El valor es el valor que está buscando en la lista.

El valor_1, valor_2… son los valores de la lista.

Si el valor se encuentra en la lista, el operador devolverá un verdadero.

La lista puede ser un conjunto de números de cadenas o incluso el resultado de salida de una Instrucción SELECT como se muestra a continuación:

value IN (SELECT value FROM table-name);

La declaración colocada entre paréntesis se conoce como subconsulta.

Con Carácter

Permítanos demostrar cómo puede utilizar el operador IN con valores de caracteres.

Considere la siguiente tabla:

Empleados:

PostgreSQL Con carácter

Ejecutemos la siguiente consulta en la tabla anterior:

SELECT *
FROM Employees
WHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');

Devuelve lo siguiente:

PostgreSQL Con carácter

Tenemos una lista de tres nombres. Buscamos si podemos encontrar alguno de estos nombres en la columna de nombres de la tabla Empleados. Se encontró que Kate Joel coincidía con uno de los registros de la tabla y se obtuvieron sus detalles.

Con numérico

Ahora, veamos cómo podemos utilizar el operador IN con valores numéricos.

Considere la tabla de precios que figura a continuación:

Precio:

PostgreSQL En con numérico

Podemos ejecutar la siguiente consulta en la tabla:

SELECT *
FROM Price
WHERE price IN (200, 308, 250, 550);

Esto devuelve lo siguiente:

PostgreSQL En con numérico

Hemos creado una lista con 4 valores numéricos. Estamos comprobando si podemos hacer coincidir alguno de estos valores con los valores incluidos en la columna de precio de la tabla de precios. Se han encontrado dos valores coincidentes y se han obtenido sus detalles.

Uso del operador NOT

El operador IN se puede utilizar junto con el operador NOT. Devuelve los valores que no se encuentran en la columna especificada. Para demostrarlo, utilizaremos la tabla Price.

SELECT *
FROM Price
WHERE price NOT IN (200, 400, 190, 230);

Esto devolverá lo siguiente:

PostgreSQL En el uso del operador NOT

Hemos creado una lista con 4 valores numéricos. Estamos comprobando la columna de precios de la tabla de precios en busca de valores que no formen parte de la lista. No se encontraron dos valores, 250 y 300, por lo que se han devuelto sus detalles.

Usando pgAdmin

Ahora veamos cómo se pueden realizar las acciones usando pgAdmin.

Con Carácter

Para lograr lo mismo a través de pgAdmin, haga esto:

Paso 1) Inicie sesión en su cuenta pgAdmin.

Paso 2)

  1. Desde la barra de navegación de la izquierda, haga clic en Bases de datos.
  2. Haga clic en Demostración.

Usando pgAdmin con carácter

Paso 3) Escriba la consulta en el editor de consultas:

SELECT *
FROM Employees
WHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');

Paso 4) Haga clic en el botón Ejecutar.

Usando pgAdmin con carácter

Debería devolver lo siguiente:

Usando pgAdmin con carácter

Con numérico

Para lograr lo mismo a través de pgAdmin, haga esto:

Paso 1) Inicie sesión en su cuenta pgAdmin.

Paso 2)

  1. Desde la barra de navegación de la izquierda, haga clic en Bases de datos.
  2. Haga clic en Demostración.

Usando pgAdmin con numérico

Paso 3) Escriba la consulta en el editor de consultas:

SELECT *
FROM Price
WHERE price IN (200, 308, 250, 550);

Paso 4) Haga clic en el botón Ejecutar.

Usando pgAdmin con numérico

Debería devolver lo siguiente:

Usando pgAdmin con numérico

Uso del operador NOT

Para lograr lo mismo a través de pgAdmin, haga esto:

Paso 1) Inicie sesión en su cuenta pgAdmin.

Paso 2)

  1. Desde la barra de navegación de la izquierda, haga clic en Bases de datos.
  2. Haga clic en Demostración.

Uso del operador NOT

Paso 3) Escriba la consulta en el editor de consultas:

SELECT *
FROM Price
WHERE price NOT IN (200, 400, 190, 230);

Paso 4) Haga clic en el botón Ejecutar.

Uso del operador NOT

Debería devolver lo siguiente:

Uso del operador NOT

Resum

  • El operador IN se utiliza con el operador WHERE y permite comprobar si un valor determinado está presente en una tabla específica.
  • El operador IN ayuda a reducir la necesidad de múltiples operadores OR en las instrucciones SELECT, UPDATE, INSERT o DELETE.
  • Al crear una lista de caracteres para verificar la presencia de un valor, cada valor de la lista debe estar entre comillas simples.
  • El operador IN también se puede utilizar con valores numéricos.
  • Cuando el operador IN se utiliza junto con el operador NOT, devuelve todos los valores que no se encuentran en la columna especificada.

Descargue la Base de Datos utilizada en este Tutorial