Подметка в SQL - Научете синтаксиса и примерите на SQL Wildcard

Съдържание:

Anonim

Преглед на Wildcard в SQL

Заместващ знак в SQL върши работа по заместване в низ, нула спрямо произволен брой знаци. Обикновено тези символи с заместващи символи могат да бъдат намерени, използвани с SQL оператора LIKE. Това е оператор, който обикновено се използва в клаузата WHERE на SQL, за да търси конкретно подреждане на знаци.

Wildcards имат подобна цел като тази на Regular Expressions. Заместващ символ е заместващ символ, който се използва за замяна на конкретни други символи или символи в този низ. Тези символи са полезни, когато искаме да извършим бързо търсене в базата данни.

В SQL имаме два общи символа за заместване. Символът в проценти означава нула, един или произволен брой знаци. Символът на подчертаване обозначава единичен знак, или буква, или цифра. Тези знаци могат да се комбинират в няколко договорености. Имаме и (charlist), (charlist) и (! Charlist), които могат да бъдат използвани както в SQL, така и в MS Access.

Ще разгледаме подробно тези символи за wildcard, заедно с няколко други полезни символа.

Wildcardописаниепример
Знак за процент:%Тази символа съвпада с нула или повече знациха% намира ха, шапка, щастлива и се случва
Долна черта: _Тази символа отговаря само на конкретен единичен символp_t намерете пот, яма и сложете
Квадратни скоби: ()Тази символа отговаря на солов символ, посочен в скобитеp (oi) не намирам тенджера и яма, но не се слага
Карет: ^Тази символа отговаря на символи, които не присъстват в скобата след този символ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 между тях и завършващ с един отделен знак.

Примери за всеки символ на Wildcard в SQL

Ето някои от примерите за Wildcard символи, дадени по-долу

1) Работа с% Wildcard

С този пример можем да изберем всички служители в един град, започвайки с „the“:

SELECT * FROM Employees
WHERE City LIKE 'the%';

2) Работа с _ Wildcard

С този пример можем да изберем всички служители на един град, започвайки с един отделен характер, но завършващ с „elhi“:

SELECT * FROM Employees
WHERE City LIKE '_elhi';

Нека да разгледаме друг пример, където можем да изберете служители на града, чието име започва с „B“, последвано от един отделен знак, последван от „r“, последван от един отделен знак, последван от „в“:

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

С този пример можем да изберем всички служители на град, чието име започва с „a“, „b“ или „c“.

SELECT * FROM Employees
WHERE City LIKE '(abc)%';

Можем да напишем същия този пример по друг начин, като използваме символа на тире (-). В това изявление ще бъдат избрани и всички служители в един град, чието име започва с „a“, „b“ или „c“. Може да се запише по следния начин:

>SELECT * FROM Employees
WHERE City LIKE '(ac)%';

5) Работа с (!) Wildcard

С този пример можем да изберем всички служители на град, чието име НЕ започва с „a“, „b“ или „c“.

SELECT * FROM Employees
WHERE City LIKE '(!abc)%';

Това изявление може да бъде написано също така:

SELECT * FROM Employees
WHERE City NOT LIKE '(abc)%';

заключение

В тази статия за SQL Wildcard разгледахме всички заместващи символи в SQL. Освен това разгледахме различни примери за SQL Wildcard символи, за да ни дадат повече разбиране и яснота.

В заключение, символите Wildcard правят подобна работа като тази на Regular Expressions. Можем да комбинираме няколко заместващи символи заедно в солов низ, за ​​да получим по-добри резултати и резултати от търсенето. Може да има няколко бази данни като MS Access, които биха могли да използват отделен заместител на SQL за подобна функция.

Препоръчителни статии

Това е ръководство за Wildcard в SQL. Тук обсъждаме синтаксиса на SQL Wildcards с примерите за всеки символ на Wildcard. Можете също да разгледате следната статия, за да научите повече -

  1. SQL изгледи
  2. Инструменти за управление на SQL
  3. Какво е MySQL?
  4. Въведение в MySQL