Pregled nadomestnih znakov v SQL
Znak nadomestnega znaka v SQL opravi zamenjavo niza z ničemer poljubnim številom znakov. Običajno lahko te znakovne znake uporabljate z operaterjem SQL LIKE. To je operater, ki se običajno uporablja v klavzuli WHERE SQL za iskanje določene razporeditve znakov.
Wildcards imajo podoben cilj kot Regular Expressions. Nadomestni znak je nadomestni znak, ki se uporablja za nadomestitev določenih drugih znakov ali znakov v tem nizu. Te posebne oznake so koristne, kadar želimo hitro poiskati v bazi podatkov.
V SQL imamo dva običajna znaka z velikimi nadomestnimi znaki. Simbol odstotkov pomeni nič, en ali poljubno število znakov. Simbol podčrtaja označuje posamezen znak, črko ali številko. Te znake je mogoče kombinirati v več dogovorih. Imamo tudi (charlist), (charlist) in (! Charlist), ki jih lahko uporabimo tako v SQL kot v MS Access.
Podrobno si bomo ogledali te znake, skupaj z nekaj drugimi uporabnimi znaki.
Wildcard | Opis | Primer |
Znak odstotka:% | Ta znak se ujema z nič ali več znaki | ha% najde ha, klobuk, srečen in se zgodi |
Podčrtaj: _ | Ta nadomestna oznaka ustreza samo posameznemu znaku | najdite lonec, jamo in postavite |
Okrogli oklepaji: () | Ta znak se ujema s samostojnim znakom, navedenim v oklepaju | p (oi) ne najdete lonca in jame, vendar ne postavite |
Caret: ^ | Ta znak se ujema z znaki, ki niso v oklepaju za tem simbolom | p (oi) t najdi postavljen, ne pa lonec in jama |
Upoštevajmo, da MS Access uporablja znak zvezdice (*) za nadomestni znak namesto odstotka (%) nadomestnega znaka, da se ujema z nič ali več znaki, in namesto s podčrtani nadomestni znak, da predstavlja en sam znak.
Sintaksa nadomestnih znakov SQL
Oglejmo si, kako lahko zapišemo znak Wildcard '%' in '_':
SELECT FROM table_name
WHERE column LIKE 'AAAA%'
Or
SELECT FROM table_name
WHERE column LIKE '%AAAA%'
Or
SELECT FROM table_name
WHERE column LIKE '_AAAA'
Or
SELECT FROM table_name
WHERE column LIKE 'AAAA_'
Or
SELECT FROM table_name
WHERE column LIKE '_ AAAA _'
AAAA% nam pomaga iskati vse strune, ki se začnejo z AAAA in se končajo tam ali končajo z drugim enim znakom ali več kot enim znakom.
% AAAA% nam pomaga iskati poljubne nize, ki se začnejo s poljubnim številom znakov, vendar vsebujejo niz AAAA vmes in se konča s poljubnim številom znakov od 0 do neskončnosti.
_AAAA nam pomaga iskati vse strune, ki se začnejo z enim ločenim znakom in končajo z nizom AAAA.
AAAA_ nam pomaga iskati vse strune, ki se začnejo z vzorcem AAAA in končajo z enim ločenim znakom.
_AAAA_ nam pomaga iskati vse strune, ki se začnejo z izrazitim znakom, ki vsebuje vzorec AAAA vmes in se konča z enim ločenim znakom.
Primeri za vsak nadomestni znak v SQL
Tu je nekaj primerov Wildcard znakov, danih spodaj
1) Delo z% Wildcard
S tem primerom lahko izberemo vse zaposlene v mestu, začenši z "the":
SELECT * FROM Employees
WHERE City LIKE 'the%';
2) Delo z _ wildcard
S tem primerom lahko izberemo vse zaposlene v mestu, začenši z enim ločenim značajem, vendar se konča z "elhi":
SELECT * FROM Employees
WHERE City LIKE '_elhi';
Poglejmo še en primer, kjer lahko izberemo zaposlene v mestu, katerega ime se začne z »B«, ki mu sledi en ločen znak, sledi »r«, za njim pa en sam ločen znak, ki mu sledi »v«:
SELECT * FROM Employees
WHERE City LIKE 'B_r_in';
3) Združevanje% in _ nadomestni znak
Lahko kombiniramo oba nadomestna znaka, da optimiziramo naš iskalni postopek.
S tem primerom lahko najdemo kateri koli niz, ki ima na drugem mestu 'a'.
WHERE StringName LIKE '_a%'
V tem primeru lahko najdemo kateri koli niz, ki se začne z 'x' in ima dolžino najmanj treh znakov.
WHERE StringName LIKE 'x_%_%'
V tem primeru lahko najdemo kateri koli niz, ki se začne z 'x' in konča z 'y', z najmanj enim znakom vmes.
WHERE StringName LIKE 'x%_y'
4) Delo z () nadomestnim znakom
S tem primerom lahko izberemo vse zaposlene v mestu, katerega ime se začne z "a", "b" ali "c".
SELECT * FROM Employees
WHERE City LIKE '(abc)%';
Ta isti primer lahko zapišemo tudi na drug način, tako da uporabimo simbol vezja (-). V tej izjavi bodo izbrani tudi vsi zaposleni v mestu, katerega ime se začne z „a“, „b“ ali „c“. Lahko se napiše na naslednji način:
>SELECT * FROM Employees
WHERE City LIKE '(ac)%';
5) Delo z (!) Nadomestnim znakom
S tem primerom lahko izberemo vse zaposlene v mestu, katerega ime se NE začne s "a", "b" ali "c".
SELECT * FROM Employees
WHERE City LIKE '(!abc)%';
Ta izjava je lahko napisana tudi:
SELECT * FROM Employees
WHERE City NOT LIKE '(abc)%';
Zaključek
V tem članku SQL Wildcard smo si ogledali vse nadomestne znake v SQL. Poleg tega smo si ogledali različne primere znakov SQL Wildcard, da bi nam zagotovili več razumevanja in jasnosti.
Za zaključek, znaki Wildcard naredijo podobno delo kot pri regularnih izrazih. Lahko kombiniramo več nadomestnih znakov skupaj v solo struni, da dosežemo boljše rezultate iskanja in rezultate. Obstaja nekaj baz podatkov, kot je MS Access, ki bi lahko uporabile ločen nadomestni znak SQL za podobno funkcijo.
Priporočeni članki
To je vodnik za Wildcard v SQL. Tukaj razpravljamo o sintaksi nadomestnih znakov SQL s primeri za vsakega znaka Wildcard. Če želite izvedeti več, si oglejte tudi naslednji članek -
- Pogledi SQL
- Orodja za upravljanje SQL
- Kaj je MySQL?
- Uvod v MySQL