Предложение SQL WHERE IN

Predlozenie Sql Where In



В SQL мы можем использовать предложение WHERE IN для фильтрации результатов в данной базе данных. Предложение WHERE IN позволяет нам выбирать строки из данной базы данных, которые соответствуют одному или нескольким указанным значениям из данного списка.

В этом уроке мы рассмотрим предложение WHERE IN, чтобы узнать, как его можно использовать для фильтрации результатов из заданной таблицы или набора результатов.

Предложение SQL WHERE IN

Ниже показан основной синтаксис предложения WHERE IN в SQL:







ВЫБРАТЬ столбец1, столбец2, ...
ОТ имя_таблицы
ГДЕ имя_столбца IN (значение1, значение2, ...);

Мы начинаем с базового оператора select, за которым следуют столбцы, которые мы хотим включить в набор результатов.



Далее мы указываем таблицу, из которой мы хотим получить результаты. Наконец, мы указываем условие фильтрации с помощью предложения WHERE, за которым следует имя столбца, по которому мы хотим фильтровать. После предложения IN мы указываем список значений, которые мы хотим использовать для фильтрации.



Пример 1. Фильтрация одного результата

Чтобы лучше продемонстрировать, как использовать предложение WHERE IN, давайте рассмотрим пример. Рассмотрим таблицу «film» из образца базы данных Sakila.





Предположим, мы хотим получить все фильмы с рейтингом PG или PG-13. Мы можем использовать предложение WHERE IN следующим образом:

ВЫБЕРИТЕ название, год выпуска, рейтинг
ИЗ фильма
ГДЕ рейтинг В («PG»);

В этом случае мы предоставляем список одного значения, которое мы хотим получить в предложении IN.



Пример 2. Фильтрация нескольких значений

Мы также можем указать более одного элемента в списке значений. Например, чтобы получить список фильмов с рейтингом PG и PG-13, мы можем выполнить запрос следующим образом:

ВЫБЕРИТЕ название, год выпуска, рейтинг
ИЗ фильма
ГДЕ рейтинг В («PG», «PG-13»);

Полученный результат выглядит следующим образом:

Пример 3: Фильтр с подзапросом

Мы также можем использовать WHERE IN в подзапросе, который позволит нам отфильтровать результаты из заданного набора результатов.

Предположим, мы хотим фильтровать фильмы по языку. Например, чтобы получить фильмы на английском и японском языках, мы можем использовать WHERE IN в подзапросе следующим образом:

ВЫБЕРИТЕ название, год выпуска, рейтинг
ИЗ фильма Ф
ГДЕ языковой_ид В (
ВЫБЕРИТЕ идентификатор языка
ИЗ языка
ГДЕ имя IN («английский», «японский»)
);

В этом примере мы создаем подзапрос, который извлекает значения «language_id» для английского и японского языков из таблицы «languages». В основном запросе мы выбираем фильмы на основе полученных значений «language_id».

Заключение

В этом посте мы узнали, как работать с предложением WHERE IN в SQL, чтобы отфильтровать результаты, соответствующие одному или нескольким значениям в заданном списке.