PostgreSQL: как оператор
Вступление
В PostgreSQL есть три типа сопоставления с образцом: оператор LIKE, оператор SIMILAR TO и регулярные выражения в стиле POSIX. Выражение LIKE возвращает true, если строка соответствует предоставленному шаблону. и выражение NOT LIKE возвращает false, если LIKE возвращает true.
Синтаксис:
строка LIKE шаблон [ESCAPE escape-символ] строка НЕ нравиться шаблон [ESCAPE escape-символ]
Иллюстрированная презентация PostgreSQL Like Operator
Пример:
'xyz' LIKE 'xyz' есть 'xyz' LIKE 'x%' true 'xyz' LIKE '_y_' true 'xyz' LIKE 'z' false
Использование оператора Like
- Как сопоставление с образцом всегда покрывает всю строку. Поэтому, чтобы соответствовать последовательности в любом месте строки, шаблон должен начинаться и заканчиваться знаком процента.
- Условия поиска могут содержать буквенные символы или цифры: символ подчеркивания (_) в шаблоне обозначает (соответствует) любой отдельный символ; знак процента (%) соответствует любой последовательности из нуля или более символов.
Вот пример таблицы сотрудников
Пример:
Если мы хотим извлечь те строки, которые содержат имя first_name, начинающееся с буквы «M», из таблицы сотрудников, можно использовать следующий оператор.
postgres = # SELECT first_name postgres- # ОТ сотрудников postgres- # ГДЕ first_name LIKE'M% '; имя ------------ Мэтью Може Майкл Mattea Марта Майкл (6 рядов)
Пример:
Если мы хотим извлечь те строки, которые содержат имя first_name, заканчивающееся буквой 'h', из таблицы сотрудников, можно использовать следующий оператор.
postgres = # SELECT first_name postgres- # ОТ сотрудников postgres- # WHERE first_name LIKE '% h'; имя ------------ Сарат Элизабет Сара (3 ряда)
Пример:
Если мы хотим извлечь те строки, которые содержат второе имя first_name, начинающееся с буквы «h», из таблицы сотрудников, можно использовать следующий оператор.
postgres = # ВЫБРАТЬ фамилию postgres- # ОТ сотрудников postgres- # ГДЕ last_name LIKE'_h% '; Фамилия ------------ Chen Khoo Philtanker Chung Уэлен (5 рядов)
Пример:
Если мы хотим извлечь те строки, которые содержат first_name с буквой 'y' в любой позиции из таблицы сотрудников, можно использовать следующий оператор.
postgres = # SELECT first_name postgres- # ОТ сотрудников postgres- # WHERE first_name LIKE '% y%'; имя ------------ Нэнси парень Payam Lindsey Tayler Алисса Kimberely Энтони Келли Тимоти Бритни Shelley (12 рядов)
Пример:
Если мы хотим извлечь из таблицы сотрудников те строки, которые содержат first_name только с 9 символами, можно использовать следующий оператор.
postgres = # SELECT first_name postgres- # ОТ сотрудников postgres- # WHERE first_name LIKE '_________'; имя ------------ Александр Александр Элизабет Kimberely (4 ряда)
Предыдущий: Функции и операторы битовых строк
Далее: Тригонометрические функции
Новый контент: Composer: менеджер зависимостей для PHP , R программирования