Огляд підстановки в SQL
Символ підстановки в SQL виконує завдання заміни рядка, нульового на будь-яку кількість символів. Зазвичай ці символи підстановки можна знайти з використанням оператора SQL LIKE. Це оператор, який зазвичай використовується в пункті WHERE SQL для пошуку певного розташування символів.
Wildcards мають подібну мету, як і у Regular Express. Символ підстановки - це символ-замінник, який використовується для заміни певних інших символів або символів у цьому рядку. Ці підказки корисні, коли ми хочемо швидко здійснити пошук у базі даних.
У нас є два загальних символи підстановки в SQL. Символ відсотків позначає нуль, одну або будь-яку кількість символів. Символ підкреслення позначає один символ, букву або цифру. Ці знаки можна поєднувати в декількох домовленостях. У нас також є (charlist), (charlist) та (! Charlist), які можна використовувати як у SQL, так і у MS Access.
Ми детально розглянемо ці символи підстановки, а також кілька інших корисних символів.
Уайлдкард | Опис | Приклад |
Знак відсотка:% | Цей підстановочний знак відповідає нулю або більше символів | га% знаходить га, капелюх, щасливий і буває |
Підкреслення: _ | Цей підстановочний знак відповідає лише окремому символу | Знайдіть горщик, яму та покладіть |
Квадратні дужки: () | Цей підстановочний знак відповідає сольному символу, вказаному в дужках | p (oi) t знайти горщик і яму, але не поставити |
Карета: ^ | Цей підстановочний знак відповідає символам, які відсутні в дужці після цього символу | p (oi) t знахідки поставити, але не горщик і яма |
Зауважимо, що MS Access використовує символ зірочки символів (*) для підстановки замість символу відсотка (%) символу підстановки, щоб відповідати нулю або більше символів, і він використовує знак питання (?) Для підстановки замість символом підкреслення підкреслення, щоб представити один символ.
Синтаксис SQL Wildcards
Давайте розглянемо кількість способів написання символів Wildcard '%' та '_':
SELECT FROM table_name
WHERE column LIKE 'AAAA%'
Або
SELECT FROM table_name
WHERE column LIKE '%AAAA%'
Або
SELECT FROM table_name
WHERE column LIKE '_AAAA'
Або
SELECT FROM table_name
WHERE column LIKE 'AAAA_'
Або
SELECT FROM table_name
WHERE column LIKE '_ AAAA _'
AAAA% допомагає нам шукати будь-які рядки, що починаються з AAAA і закінчуються там або закінчуються іншим символом або більше, ніж одним символом.
% AAAA% допомагає нам шукати будь-які рядки, що починаються з будь-якої кількості символів, але містять між собою рядок AAAA і закінчуючи будь-якою кількістю символів від 0 до нескінченності.
_AAAA допомагає нам шукати будь-які рядки, що починаються з одного окремого символу і закінчуються рядком AAAA.
AAAA_ допомагає нам шукати будь-які рядки, починаючи з візерунка AAAA і закінчуючи одним окремим символом.
_AAAA_ допомагає нам шукати будь-які рядки, що починаються з чіткого символу, що містять візерунок AAAA посеред і закінчується одним окремим символом.
Приклади кожного символу підстановки у SQL
Ось кілька прикладів символів Wildcard, наведених нижче
1) Робота з% wildcard
На цьому прикладі ми можемо вибрати всіх працівників міста, починаючи з “the”:
SELECT * FROM Employees
WHERE City LIKE 'the%';
2) Робота з _ wildcard
На цьому прикладі ми можемо вибрати всіх працівників міста, починаючи з одного окремого символу, але закінчуючи на "elhi":
SELECT * FROM Employees
WHERE City LIKE '_elhi';
Давайте подивимось на інший приклад, де ми можемо вибрати службовців міста, ім’я яких починається з "B", а потім - один окремий символ, після - "r", а потім один окремий символ, а потім "in":
SELECT * FROM Employees
WHERE City LIKE 'B_r_in';
3) Поєднання% та _ Wildcard
Ми можемо комбінувати обидва символи підстановки, щоб оптимізувати наш процес пошуку.
На цьому прикладі ми можемо знайти будь-який рядок, що має "a" на другому місці.
WHERE StringName LIKE '_a%'
На цьому прикладі ми можемо знайти будь-який рядок, що починається з 'x' і має довжину мінімум трьох символів.
WHERE StringName LIKE 'x_%_%'
У цьому прикладі ми можемо знайти будь-який рядок, що починається з 'x' і закінчується на 'y', мінімум один символ між ними.
WHERE StringName LIKE 'x%_y'
4) Робота з () wildcard
На цьому прикладі ми можемо вибрати всіх працівників міста, ім’я яких починається з «а», «b» або «c».
SELECT * FROM Employees
WHERE City LIKE '(abc)%';
Цей же приклад ми можемо записати іншим способом, використовуючи символ дефісу (-). Ця заява також вибере всіх працівників міста, чиє ім’я починається з "a", "b" або "c". Його можна записати так:
>SELECT * FROM Employees
WHERE City LIKE '(ac)%';
5) Робота з (!) Підстановкою
На цьому прикладі ми можемо вибрати всіх працівників міста, чиє ім’я НЕ починається з «а», «b» або «c».
SELECT * FROM Employees
WHERE City LIKE '(!abc)%';
Це твердження також можна записати так:
SELECT * FROM Employees
WHERE City NOT LIKE '(abc)%';
Висновок
У цій статті підстановки SQL ми розглянули всі підмітні знаки в SQL. Крім того, ми розглянули різні приклади символів підстановки SQL, щоб дати нам більше розуміння та ясності.
Підсумовуючи, символи Wildcard виконують аналогічну роботу, як і у Regular вирази. Ми можемо комбінувати кілька підстановочних знаків разом у сольній струні, щоб отримати кращі результати пошуку та результати. Існує декілька баз даних, таких як MS Access, які могли б використовувати окрему підстановку SQL для подібної функції.
Рекомендовані статті
Це посібник з Wildcard в SQL. Тут ми обговорюємо синтаксис SQL Wildcards з прикладами для кожного символу Wildcard. Ви також можете переглянути наступну статтю, щоб дізнатися більше -
- Перегляди SQL
- Інструменти управління SQL
- Що таке MySQL?
- Вступ до MySQL