Примери за 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' ]

Изразът е израз на символ като колона или поле.

Шаблонът е израз на символи със съвпадение на шаблона.

Екраниращият знак е незадължителен параметър. Той позволява тестване на буквални екземпляри на заместващи знаци като% и _. Ако не е предоставено, \ ще се използва като изходен знак.

Използване на% заместващ символ

Както посочихме по-рано, знакът% съответства на нула, един или повече знаци или числа. Обмислете следната таблица:

Книга:

Искаме книгата, чието име е като „Лир

... ", за да получим този резултат, можем да изпълним следната команда:
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%';

Това връща следното:

Само една книга отговаря на условието за търсене. Нека видим списъка с имена на книги, които нямат дума „Made“:

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) Щракнете върху бутона за изпълнение.

Той трябва да върне следното:

Резюме:

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

Изтеглете базата данни, използвана в този урок