Cláusula SQL WHERE IN

Clausula Sql Where In



En SQL, podemos usar la cláusula WHERE IN para filtrar los resultados en una base de datos determinada. La cláusula WHERE IN nos permite seleccionar las filas de una base de datos determinada que coinciden con uno o más de los valores especificados de una lista determinada.

En este tutorial, exploraremos la cláusula WHERE IN para descubrir cómo podemos usarla para filtrar los resultados de una tabla o conjunto de resultados determinado.

Cláusula SQL WHERE IN

A continuación se muestra la sintaxis básica de la cláusula WHERE IN en SQL:







SELECCIONE columna1, columna2, ...
DESDE nombre_tabla
DONDE nombre_columna EN (valor1, valor2, ...);

Comenzamos con una declaración básica de 'selección' seguida de las columnas que deseamos incluir en el conjunto de resultados.



A continuación, especificamos la tabla de la que deseamos recuperar los resultados. Por último, especificamos la condición del filtro usando la cláusula WHERE seguida del nombre de la columna por la que deseamos filtrar. Después de la cláusula IN, especificamos una lista de valores que queremos usar para filtrar.



Ejemplo 1: filtrar un único resultado

Para demostrar mejor cómo utilizar la cláusula WHERE IN, veamos un ejemplo. Considere la tabla de “películas” de la base de datos de muestra de Sakila.





Supongamos que deseamos recuperar todas las películas con clasificación PG o PG-13. Podemos utilizar la cláusula WHERE IN de la siguiente manera:

SELECCIONE título, año_lanzamiento, calificación
DE la película
DONDE calificación EN ('PG');

En este caso, proporcionamos una lista de un valor único que deseamos recuperar en la cláusula IN.



Ejemplo 2: filtrar varios valores

También podemos especificar más de un elemento en la lista de valores. Por ejemplo, para recuperar las películas con una lista con clasificación PG y PG-13, podemos ejecutar la consulta de la siguiente manera:

SELECCIONE título, año_lanzamiento, calificación
DE la película
DONDE calificación EN ('PG', 'PG-13');

El resultado resultante es el siguiente:

Ejemplo 3: Filtrar con subconsulta

También podemos usar WHERE IN en una subconsulta que nos permite filtrar los resultados de un conjunto de resultados determinado.

Supongamos que deseamos filtrar las películas según el idioma. Por ejemplo, para recuperar las películas en inglés y japonés, podemos usar WHERE IN dentro de una subconsulta de la siguiente manera:

SELECCIONE título, año_lanzamiento, calificación
DE la película f
DONDE language_id EN (
SELECCIONE ID_idioma
DEL idioma
DONDE nombre EN ('inglés', 'japonés')
);

En este ejemplo, creamos una subconsulta que recupera los valores de 'language_id' para los idiomas inglés y japonés de la tabla 'idiomas'. En la consulta principal, seleccionamos las películas en función de los valores resultantes de 'language_id'.

Conclusión

En esta publicación, aprendimos cómo trabajar con la cláusula WHERE IN en SQL para filtrar los resultados que coinciden con uno o varios valores en una lista determinada.