PostgreSQL LIKE, Not Like, подстановочные знаки (%, _) Примеры

Содержание:

Anonim

Оператор PostgreSQL LIKE помогает нам сопоставлять текстовые значения с шаблонами с помощью подстановочных знаков. Выражение поиска можно сопоставить с выражением шаблона.

В случае совпадения оператор LIKE возвращает значение true. С помощью оператора LIKE можно использовать подстановочные знаки в предложении WHERE операторов SELECT, UPDATE, INSERT или DELETE.

В этом руководстве по PostgreSQL вы узнаете следующее:

  • Дикие карты
  • Синтаксис
  • Использование подстановочного знака%
  • Использование подстановочного знака _
  • Использование оператора NOT
  • Использование pgAdmin

Дикие карты

Есть только два символа подстановки, которые можно использовать вместе с

  • Знак процента (%)
  • Подчеркивать (_)

Знак процента (%) используется для обозначения нуля, одного или нескольких символов или чисел.

Подстановочный знак подчеркивания (_) используется для обозначения одного символа или числа. Эти символы также можно комбинировать. Если оператор LIKE не используется вместе с этими двумя знаками, он будет действовать как оператор равенства.

Синтаксис

Вот синтаксис оператора LIKE:

expression LIKE pattern [ ESCAPE 'escape-character' ]

Выражение - это символьное выражение, такое как столбец или поле.

Шаблон - это символьное выражение с сопоставлением с образцом.

Эскейп-символ - это необязательный параметр. Он позволяет тестировать буквальные экземпляры подстановочных знаков, таких как% и _. Если он не указан, \ будет использоваться как escape-символ.

Использование подстановочного знака%

Как мы заявляли ранее, знак% соответствует нулю, одному или нескольким символам или цифрам. Рассмотрим следующую таблицу:

Книга:

Нам нужна книга, название которой похоже на «Лир».

… "Чтобы получить такой результат, мы можем выполнить следующую команду:
SELECT *FROMBookWHEREname LIKE 'Lear%';

Это вернет следующее:

Книгу нашли.

Будем искать книгу по названию:

SELECT *FROMBookWHEREname LIKE '%by%';

Это вернет следующее:

Использование подстановочного знака _

Как мы заявляли ранее, знак _ представляет один символ или цифру. Его можно использовать, как показано ниже:

SELECT *FROMBookWHEREname LIKE '_earn%';

Это возвращает следующее:

Вот еще один пример:

SELECT *FROMBookWHEREname LIKE '%Beginner_';

Это возвращает следующее:

Использование оператора NOT

Когда оператор LIKE комбинируется с оператором NOT, возвращается любая строка, не соответствующая шаблону поиска. Например, чтобы увидеть книгу, название которой не начинается с «post», мы можем выполнить следующую команду:

SELECT *FROMBookWHEREname NOT LIKE 'Post%';

Это возвращает следующее:

Только одна книга соответствовала условиям поиска. Давайте посмотрим на список названий книг, в которых нет слова «Сделано»:

SELECT *FROMBookWHEREname NOT LIKE '%Made%';

Это возвращает следующее:

3 строки соответствовали условию поиска.

Использование pgAdmin

Теперь посмотрим, как можно выполнять действия с помощью pgAdmin.

Использование подстановочного знака%

Шаг 1) Войдите в свою учетную запись pgAdmin.

Шаг 2)

  1. На панели навигации слева нажмите «Базы данных».
  2. Щелкните Демо.

Шаг 3) Введите запрос в редакторе запросов:

SELECT *FROMBookWHEREname LIKE 'Lear%';

Шаг 4) Нажмите кнопку «Выполнить».

Он должен вернуть следующее:

Чтобы найти книгу по названию:

Шаг 1) Введите следующую команду в редакторе запросов:

SELECT *FROMBookWHEREname LIKE '%by%';

Шаг 2) Нажмите кнопку «Выполнить».

Он должен вернуть следующее:

Использование подстановочного знака _

Шаг 1) Войдите в свою учетную запись pgAdmin.

Шаг 2)

  1. На панели навигации слева нажмите «Базы данных».
  2. Щелкните Демо.

Шаг 3) Введите запрос в редакторе запросов:

SELECT *FROMBookWHEREname LIKE '_earn%';

Шаг 4) Нажмите кнопку «Выполнить».

Он должен вернуть следующее:

Шаг 5) Чтобы запустить второй пример:

  1. Введите в редакторе запросов следующий запрос:
    SELECT *FROMBookWHEREname LIKE '%Beginner_';
  2. Щелкните кнопку «Выполнить».

Он должен вернуть следующее:

Использование оператора NOT

Шаг 1) Войдите в свою учетную запись pgAdmin.

Шаг 2)

  1. На панели навигации слева нажмите «Базы данных».
  2. Щелкните Демо.

Шаг 3) Чтобы просмотреть все книги, названия которых не начинаются с «Опубликовать», введите запрос в редакторе запросов:

SELECT *FROMBookWHEREname NOT LIKE 'Post%';

Шаг 4) Нажмите кнопку «Выполнить».

Он должен вернуть следующее:

Чтобы просмотреть список книг, в названии которых нет слова «Сделано»:

Шаг 1) Введите в редакторе запросов следующий запрос:

SELECT *FROMBookWHEREname NOT LIKE '%Made%';

Шаг 2) Нажмите кнопку «Выполнить».

Он должен вернуть следующее:

Резюме:

  • LIKE в PostgreSQL используется для сопоставления текстовых значений с шаблонами с использованием подстановочных знаков.
  • Предложение LIKE позволяет нам использовать подстановочные знаки в операторах SELECT, UPDATE, INSERT или DELETE.
  • Подстановочный знак% соответствует одному или нескольким значениям. Значения могут быть числами или символами.
  • Подстановочный знак _ соответствует ровно одному значению. Значение может быть символом или числом.
  • Оператор LIKE можно комбинировать с оператором NOT для возврата любой строки, не соответствующей шаблону поиска.

Загрузите базу данных, используемую в этом руководстве