Prezentare generală a Wildcard în SQL
Un caracter wildcard din SQL face treaba de a înlocui un șir, zero cu un număr de caractere. De obicei, aceste caractere wildcard pot fi găsite fiind utilizate cu operatorul SQL LIKE. Acesta este un operator care este utilizat în mod obișnuit în clauza WHERE de SQL, pentru a căuta un anumit aranjament de caractere.
Wildcard-urile au un obiectiv similar cu cel al expresiilor regulate. Un caracter wildcard este un caracter substitut care este utilizat pentru a înlocui alte caractere sau caractere specifice din șirul respectiv. Aceste wildcard-uri sunt benefice atunci când dorim să realizăm o căutare rapidă în baza de date.
Avem două caractere comune cu caracter comod în SQL. Simbolul procente semnifică zero, unul sau orice număr de caractere. Simbolul subliniere indică un singur personaj, fie o literă, fie un număr. Aceste semne pot fi combinate în mai multe aranjamente. Avem, de asemenea, (charlist), (charlist) și (! Charlist), care pot fi folosite atât în SQL cât și în MS Access.
Vom analiza în detaliu aceste caractere cu caracter comod, împreună cu alte câteva caractere utile cu caracter comod.
wildcard | Descriere | Exemplu |
Procent semn:% | Acest wildcard se potrivește cu zero sau mai multe caractere | ha% găsește ha, pălărie, fericit și se întâmplă |
Sublinia: _ | Acest wildcard se potrivește cu un singur caracter specific | p_t găsi pot, groapă și pune |
Paranteza patrata: () | Acest wildcard se potrivește cu un caracter solo specificat între paranteze | p (oi) nu găsește oală și groapă, dar nu pusă |
Caret: ^ | Acest wildcard se potrivește cu caractere care nu sunt prezente în paranteză după acest simbol | p (oi) t găsește pus, dar nu oală și groapă |
Rețineți că MS Access folosește simbolul asteriscului caracter (*) pentru wildcard în locul caracterului wildcard al simbolului procentual (%) pentru a se potrivi cu zero sau mai multe caractere și folosește semnul de întrebare (?) Pentru caracterul wildcard în locul caracterul subliniat cu caracter comod pentru a reprezenta un singur personaj.
Sintaxa SQL Wildcard-urilor
Să ne uităm la modul în care pot fi scrise caracterele Wildcard „%” și „_”:
SELECT FROM table_name
WHERE column LIKE 'AAAA%'
Sau
SELECT FROM table_name
WHERE column LIKE '%AAAA%'
Sau
SELECT FROM table_name
WHERE column LIKE '_AAAA'
Sau
SELECT FROM table_name
WHERE column LIKE 'AAAA_'
Sau
SELECT FROM table_name
WHERE column LIKE '_ AAAA _'
AAAA% ne ajută să căutăm orice șiruri care încep cu AAAA și se termină acolo sau se termină cu un alt personaj sau mai mult decât un singur caracter.
% AAAA% ne ajută să căutăm șiruri care încep cu orice număr de caractere, dar care conțin șirul AAAA între ele și se termină cu orice număr de caractere de la 0 la infinit.
_AAAA ne ajută să căutăm orice șiruri care încep cu un singur personaj distinct și se termină cu șirul AAAA.
AAAA_ ne ajută să căutăm orice șiruri care încep cu modelul AAAA și se termină cu un singur caracter distinct.
_AAAA_ ne ajută să căutăm orice șiruri care încep cu un caracter distinct, care conține modelul AAAA între și terminând cu un singur caracter distinct.
Exemple pentru fiecare caracter wildcard în SQL
Iată câteva dintre exemplele de caracter Wildcard date mai jos
1) Lucrul cu% Wildcard
Cu acest exemplu, putem selecta toți angajații unui oraș începând cu „the”:
SELECT * FROM Employees
WHERE City LIKE 'the%';
2) Lucrul cu _ Wildcard
Cu acest exemplu, putem selecta toți angajații unui oraș începând cu un singur personaj distinct, dar terminând cu „elhi”:
SELECT * FROM Employees
WHERE City LIKE '_elhi';
Să ne uităm la un alt exemplu în care putem selecta Angajați ai orașului al căror nume începe cu „B”, urmat de un singur personaj distinct, urmat de „r”, urmat de un singur personaj distinct, urmat de „în”:
SELECT * FROM Employees
WHERE City LIKE 'B_r_in';
3) Combinarea% și _ Wildcard
Putem combina atât caracterele wildcard pentru a optimiza procesul nostru de căutare.
Cu acest exemplu, putem găsi orice șir care are „a” în a doua poziție.
WHERE StringName LIKE '_a%'
Cu acest exemplu, putem găsi orice șir care începe cu „x” și care are lungimea de minimum trei caractere.
WHERE StringName LIKE 'x_%_%'
Cu acest exemplu, putem găsi orice șir care începe cu 'x' și se termină cu 'y', cu cel puțin un caracter între ele.
WHERE StringName LIKE 'x%_y'
4) Lucrul cu () Wildcard
Cu acest exemplu, putem selecta toți angajații unui oraș al cărui nume începe cu „a”, „b” sau „c”.
SELECT * FROM Employees
WHERE City LIKE '(abc)%';
Putem scrie același exemplu într-un alt mod, folosind simbolul cratima (-). Această declarație va selecta, de asemenea, toți angajații unui oraș al cărui nume începe fie cu „a”, „b” sau „c”. Poate fi scris astfel:
>SELECT * FROM Employees
WHERE City LIKE '(ac)%';
5) Lucrul cu wildcard-ul (!)
Cu acest exemplu, putem selecta toți angajații unui oraș al cărui nume NU începe cu „a”, „b” sau „c”.
SELECT * FROM Employees
WHERE City LIKE '(!abc)%';
Această afirmație poate fi scrisă astfel:
SELECT * FROM Employees
WHERE City NOT LIKE '(abc)%';
Concluzie
În acest articol Wildcard SQL, am analizat toate wildcard-urile din SQL. Mai mult, am analizat diverse exemple de caractere cu wildcard SQL pentru a ne oferi mai multă înțelegere și claritate.
În concluzie, caracterele Wildcard lucrează similar cu cel al Expresiilor regulate. Putem combina mai multe wildcarduri împreună într-un șir solo pentru a obține rezultate și căutări mai bune. Există câteva baze de date precum MS Access care ar putea utiliza un wildcard SQL separat pentru o funcție similară.
Articole recomandate
Acesta este un ghid pentru Wildcard în SQL. Aici discutăm Sintaxa de Wildcarduri SQL cu exemple pentru fiecare caracter Wildcard. De asemenea, puteți consulta articolul următor pentru a afla mai multe -
- Vizualizări SQL
- Instrumente de management SQL
- Ce este MySQL?
- Introducere în MySQL