Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

В этом блоге мы обсудим, как фильтровать в SQL. Мы объясним и покажем несколько примеров с использованием таких условий фильтрации, как IN, NOT IN, LIKE и NOT LIKE .

Эти условия фильтрации используются для фильтрации вывода данных. Вместо того, чтобы выбирать их с помощью нескольких строк команд, вам будет проще получить доступ к данным.

Оглавление

Использование операторов IN и NOT IN для фильтрации данных в SQL

В этом примере мы будем получать данные с идентификаторов 1, 5 или 7. Большинство людей будут использовать условия ИЛИ .

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Если вы хотите получить данные от большего количества идентификаторов, вам придется написать несколько условий ИЛИ. Однако вы можете использовать оператор IN для получения нужных данных вместо многократного использования условий ИЛИ .

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Использование этого условия фильтрации даст нам тот же результат, что и данные для идентификаторов 1, 5 или 7. Напротив, если вы хотите извлечь данные из всех, кроме идентификаторов 1, 5 и 7, вы должны скорее всего, используйте условие ИЛИ и <> (оператор НЕ РАВНО).

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Вместо написания длинных команд мы можем использовать оператор NOT IN .

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

С этим условием фильтрации вы извлечете данные, кроме идентификаторов 1, 5 и 7.

Использование этих условий сэкономит вам много времени, и в то же время это гораздо лучший способ записи вместо использования нескольких условий ИЛИ .

Использование операторов LIKE и NOT LIKE для фильтрации данных в SQL

LIKE и NOT LIKE аналогичны операторам IN и NOT IN. Вместо извлечения самих данных он получит часть строки. Имейте в виду, что вы можете использовать подстановочные знаки или специальные символы, такие как процент (%) и подчеркивание (_).

% означает , что он будет соответствовать всем записям с данной строкой. Если мы сопоставляем 86 и %, первые две цифры должны быть 86. Таким образом, будут найдены любые значения, начинающиеся с 86.

Но если мы поместим % по обе стороны от 86, он может исходить из любого места. Оно может прийти с самого начала, с конца или с середины. Таким образом, он найдет любые значения, которые имеют 86 в начале, середине или конце. 

С другой стороны, _ соответствует только 1 символу. Если вы используете 86 и _ (86_), он будет искать любые значения, которые имеют 86 на 1-й и 2-й позициях, таких как 860, 861, 862 и т. д. и т. д. Если вы используете _ и 86 (_86), он будет искать любые значения с 86 на 2-й и 3-й позициях. 

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

В этом примере мы будем использовать оператор LIKE для получения данных, содержащих строку Mark . Нам просто нужно поместить Mark между %, чтобы получить результат, содержащий Mark

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Точно так же, если мы не хотим извлекать данные, содержащие Mark , мы можем использовать оператор NOT LIKE . Затем поставьте отметку между %.

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

На этот раз вывод не будет содержать Mark .

Использование условий фильтрации SQL в SSMS

Сначала мы откроем нашу SSMS (SQL Server Management Studio).

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Далее мы загрузим таблицу, которую будем использовать. Обратите внимание, что мы используем базу данных adventureworks2012, которую можно найти на веб-сайте Microsoft Documentation .

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Затем нажмите «Выполнить» .

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

После этого вы увидите вывод на вкладке «Результаты».

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Затем мы отфильтруем вывод на основе PersonType . Мы будем использовать команду выбора отдельного . Мы выделим команду и нажмем «Выполнить» .

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Затем вы увидите вывод, показывающий PersonType .

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Далее мы извлечем записи из PersonType IN , SP или SC . Для этого мы будем использовать условие ИЛИ . Мы выделим команду и нажмем выполнить .

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Затем вы увидите, что количество строк равно 19 254.

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Однако вместо использования условия ИЛИ мы будем использовать оператор IN . Итак, набираем команду и выделяем ее. Затем нажмите выполнить .

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Это даст нам такое же количество строк, которое равно 19 254 .

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Если мы хотим извлечь все данные, кроме IN , SP и SC , мы будем использовать оператор NOT IN . Итак, давайте наберем команду и выделим ее. Затем нажмите выполнить .

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Это даст нам все данные, кроме тех, которые получены из IN , SP и SC .

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Далее мы будем использовать оператор LIKE для извлечения данных, содержащих Роба, из столбца FirstName . Давайте воспользуемся командой, выделим ее и нажмем «Выполнить» .

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

В результате мы увидим, что вывод теперь содержит Rob в столбце FirstName . Поскольку мы использовали %, будут показаны все данные, содержащие строку Rob .

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Наконец, мы будем использовать оператор NOT LIKE . В этом примере мы хотим извлечь данные, которые не содержат Rob . Итак, мы напечатаем код, выделим его и нажмем «Выполнить».

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Это даст нам вывод, который не показывает ни одной записи, содержащей Роба в столбце Имя .

Фильтровать в SQL, используя IN, NOT IN, LIKE и NOT LIKE

Заключение

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

Эти операторы более эффективны, чем использование условия ИЛИ . Вы можете использовать эти операторы для фильтрации и извлечения нужных данных из вашей базы данных вместо использования более длинных команд, поэтому обязательно используйте эти условия фильтрации правильно.

Всего наилучшего,

Хафиз


Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Как сохранить и загрузить файл RDS в R

Как сохранить и загрузить файл RDS в R

Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

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

Введение в фильтрацию контекста в LuckyTemplates

Введение в фильтрацию контекста в LuckyTemplates

В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.

Идеи материализации кэшей данных в DAX Studio

Идеи материализации кэшей данных в DAX Studio

В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.

Бизнес-отчетность с использованием LuckyTemplates

Бизнес-отчетность с использованием LuckyTemplates

Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать