В этом учебном пособии вы узнаете, как использовать MySQL условие IN с синтаксисом и примерами.
Описание
MySQL условие IN используется, чтобы уменьшить необходимость использования нескольких условий OR в операторе SELECT, INSERT, UPDATE или DELETE.
Синтаксис
Синтаксис условия IN в MySQL:
Параметры или аргументы
expression - выражение для проверки.
value1, value2, ... или value_n значения для проверки выражения. Если любое из этих значений соответствует выражению, то условие IN будет оцениваться как true. Это быстрый способ проверить, соответствует ли какое-либо одно из значений выражению.
Примечание
- MySQL условие IN вернет записи, в которых expression равно value1, value2 ... или value_n.
- MySQL условие IN также называется оператором MySQL IN.
Пример с символами
Рассмотрим пример MySQL условия IN, используя символьные значения.
Ниже приведен пример MySQL оператора SELECT, который использует условие IN для сравнения значений символов:
1 2 3 |
SELECT * FROM contacts WHERE last_name IN ('Bernard', 'Boy', 'Tomas'); |
Этот пример MySQL условия IN возвращает все строки из таблицы contacts, где last_name - это Bernard, Boy или Tomas. Поскольку в SELECT используется *, то все поля из таблицы contacts будут отображаться в результирующем наборе.
Вышеприведенный пример IN эквивалентен следующему оператору SELECT:
1 2 3 4 5 |
SELECT * FROM contacts WHERE last_name = 'Bernard' OR last_name = 'Boy' OR last_name = 'Tomas'; |
Как вы можете видеть, использование MySQL условия IN облегчает чтение и повышает эффективности.
Пример с числами
Рассмотрим пример MySQL условия IN, используя числовые значения.
Например:
1 2 3 |
SELECT * FROM suppliers WHERE supplier_id IN (20, 23, 31, 40); |
Этот пример использования MySQL условия IN будет возвращать всех suppliers, где supplier_id равен 20, 23, 31 или 40.
Вышеприведенный пример IN эквивалентен следующему оператору SELECT:
1 2 3 4 5 6 |
SELECT * FROM suppliers WHERE supplier_id = 20 OR supplier_id = 23 OR supplier_id = 31 OR supplier_id = 40; |
Пример использования оператора NOT
Наконец, давайте рассмотрим пример условия IN, используя оператор NOT.
Например:
1 2 3 |
SELECT * FROM contacts WHERE last_name NOT IN ('Bernard', 'Boy', 'Tomas'); |
Этот пример MySQL условия IN возвращает все строки из таблицы contacts, где last_name не является Bernard, Boy или Tomas. Иногда более эффективно перечислять значения, которые вы не хотите видеть в результате, в отличие от желаемых значений.