Upotreba znakova za neodgovarajuće podudaranje
Podudaranje SQL uzorka omogućuje traženje obrazaca u podacima, ako ne znate točnu riječ ili izraz koji tražite. Ovakav SQL upit koristi znakove zamjenskih znakova kako bi se podudarao s uzorkom, umjesto da je upravo definira. Na primjer, možete upotrijebiti zamjenski znak "C%" kako bi se podudarao s bilo kojim nizom koji počinje s glavnim gradom C.
Upotreba LIKE operatera
Da biste upotrijebili izraz zamjenskih znakova u SQL upitu, upotrijebite operatera LIKE u klauzuli WHERE i priložite obrazac unutar pojedinačnih navodnika.
Korištenje% Wildcard za izvođenje jednostavnog pretraživanja
Da biste tražili bilo kojeg zaposlenika u bazi podataka s prezimenom koji počinje slovom C, upotrijebite sljedeću Transact-SQL izjavu:
SELECT * FROM zaposlenika GDJE last_name LIKE 'C%'Ometanje uzoraka pomoću NOT ključne riječi
Koristite NOT ključnu riječ za odabir zapisa koji se ne podudaraju s uzorkom. Na primjer, ovaj upit vraća sve zapise čije ime trajno ne počinje s C:
SELECT * FROM zaposlenika GDJE last_name NE KAO 'C%'Podudaranje uzorka bilo gdje koristeći% Wildcard dva puta
Upotrijebite dvije instance % zamjenske oznake kako biste odgovarali određenom uzorku bilo gdje. Ovaj primjer vraća sve zapise koji sadrže C bilo gdje u prezimenu:
SELECT * FROM zaposlenika GDJE last_name LIKE '% C%'Pronalaženje podudaranja uzoraka na određenom položaju
Koristite _ zamjenski znak za vraćanje podataka na određenom mjestu. Ovaj primjer odgovara samo ako se C pojavljuje na trećem mjestu u stupcu prezime:
SELECT * FROM zaposlenika GDJE last_name LIKE '_ _C%'Podržani izraz zamjenskih znakova u Transact SQL
Postoji nekoliko zamjenskih znakova koje podržava Transact SQL:
- % Wildcard odgovara nuli ili više znakova bilo koje vrste, a može se koristiti za definiranje zamjenskih znakova i prije i poslije uzorka. Ako ste upoznati s podudaranjem DOS uzorka, to je ekvivalent znaka * u toj sintaksi.
- _ Zamjenski znak točno odgovara jednom znaku bilo koje vrste. To je ekvivalent ? zamjenski znak u podudaranju DOS uzorka.
- Navedite popis znakova zatvarajući ih u uglatim zagradama. Na primjer, zamjenski znak [aeiou] odgovara bilo kojem samoglasniku.
- Navedite niz znakova zatvaranjem raspona u kvadratnim zagradama. Na primjer, zamjenski znak [am] odgovara svim slovima u prvoj polovici abecede.
- Zanemarite niz znakova tako što ćete uključiti karikaturni znak odmah unutar okvira otvaranja kvadrata. Na primjer, [^ aeiou] odgovara bilo kojem ne-vokalnom znaku dok [^ am] odgovara bilo kojem znaku koji nije u prvoj polovici abecede.
Kombiniranje znakova za složene uzorke
Kombinirajte te zamjenske znakove u složenim uzorcima za naprednije upite. Na primjer, pretpostavimo da morate sastaviti popis svih vaših zaposlenika koji imaju imena koja počinju pismom iz prve polovice abecede, ali ne završavaju s samoglasnikom. Možete upotrijebiti sljedeći upit:
SELECT * FROM zaposlenika GDJE last_name LIKE '[am]% [^ aeiou]'Isto tako, možete sastaviti popis svih zaposlenika s prezimenima koji se sastoje od točno četiri znaka pomoću četiri primjerka _ uzorka:
SELECT * FROM zaposlenika GDJE last_name LIKE '____'Kao što možete reći, upotreba mogućnosti podudaranja SQL obrazaca nudi korisnicima baze podataka mogućnost da ide dalje od jednostavnih upita za tekst i obavlja napredne operacije pretraživanja.