Naučite kako možete manipulirati tekstualnim nizovima na poslužitelju baze podataka umjesto u svojoj temeljnoj aplikaciji.
Ključni zahvati
- Ključni zaključci:
- Funkcije SQL nizova unaprijed su definirane funkcije koje se koriste za manipuliranje vrijednostima nizova i izvođenje raznih operacija baze podataka.
- Često korištene funkcije niza uključuju CONCAT(), SUBSTRING(), LENGTH(), UPPER(), TRIM(), REPLACE(), INSTR(), RIGHT(), LEFT(), INSERT() i REPEAT().
- Učenje funkcija SQL nizova ključno je za rad s relacijskim bazama podataka i učinkovito manipuliranje i pohranjivanje podataka.
SQL (Structured Query Language) ima mnogo ugrađenih funkcija. Neke od široko korištenih su funkcije niza.
Nizovi su tip podataka koji se koristi za pohranu informacija temeljenih na znakovima. Funkcije SQL nizova su unaprijed definirane funkcije. Možete ih koristiti za manipuliranje vrijednostima nizova i izvođenje raznih operacija baze podataka.
Funkcije nizova obrađuju i vraćaju rezultate koji mogu biti nizovi ili numeričke vrijednosti. Kada radite sa SQL-om, koristit ćete sljedeće standardne funkcije znakovnog niza.
1. CONCAT()
CONCAT() je široko korištena funkcija u SQL poslužiteljima. Koristit ćete ga za spajanje dvije ili više žica u jednu žicu. Funkcija uzima nizove kao ulaze i ulančava ih u vrijednost jednog niza. Prihvaća nizove i separator kao argumente.
Sintaksa je:
CONCAT(str1, str2)
Pogledajte sljedeći primjer:
SELECTCONCAT('MakeUseOf', 'website')
Što će vratiti vrijednost "MakeUseOfwebsite".
Naredba SELECT jedna je od naj često korištene SQL naredbe. Koristit ćete ga za pristup zapisima iz tablica baze podataka.
Odabrane podatke možete dohvatiti prema uvjetima navedenim u funkciji. Također možete koristiti druge izjave kao što su ORDER BY, WHERE, GRUPIRAJ PO, itd., za manipuliranje bazama podataka.
Drugi oblik funkcije CONCAT() je CONCAT_WS(). Ova funkcija uzima nizove kao ulaze i spaja ih u jedan niz. Ali između njih postavlja razdjelnik. Razdjelnik je obično prvi argument.
Na primjer:
SELECTCONCAT_WS(',', 'MakeUseOf', 'website')
Povratna vrijednost bit će "MakeUseOf, web stranica".
2. PODNIZ()
Funkcija SUBSTRING() vraća dio niza počevši od navedene pozicije. Potrebna su tri argumenta niz, početak i duljina. Dužina nije obavezna.
Sintaksa:
SUBSTRING(str, start, len)
Početna pozicija počinje s indeksom jedan (ne s indeksom nula, kao u nekim programskim jezicima). Duljina (len) označava broj znakova koje treba izdvojiti. Duljina uvijek mora biti pozitivan broj.
Na primjer:
SELECTSUBSTRING('abcde', 3, 2)
Vraća vrijednost "cd".
3. DULJINA()
Funkcija SQL LENGTH() daje duljinu niza. Uzima niz kao argument. Sintaksa je:
LENGTH(str)
Na primjer, da biste pronašli duljinu imena 'Jones', napisat ćete funkciju ovako:
SELECTLENGTH('Jones')
Povratna vrijednost je 5.
4. GORNJI()
Ova funkcija mijenja sve znakove u nizu u velika slova. U nekim bazama podataka poznat je i kao UCASE(). Sintaksa je:
UPPER(str)
Na primjer, pretvorite rečenicu "Volim SQL tutoriale." na velika slova.
SELECTUPPER('I love SQL Tutorials!')
Povratna vrijednost je "VOLIM SQL TUTORIALE!"
SQL također ima funkciju LOWER(). Ova funkcija pretvara nizove u mala slova, suprotno od funkcije UPPER().
5. TRIM()
Funkcija TRIM() uklanja razmake oko niza. Uzima niz kao argument. Sintaksa je:
TRIM(str)
Na primjer:
TRIM(' abcd ')
Povratna vrijednost bit će "abcd".
Također možete koristiti TRIM() za uklanjanje drugih znakova iz niza sa sljedećom sintaksom:
TRIM([{BOTH | LEADING | TRAILING} [remstr] FROM] str)
Funkcija uključuje argumente koji spominju gdje bi trebala djelovati. Na primjer, BOTH se odnosi i na prefikse i na sufikse niza. Dok se LEADING odnosi na prefiks, a TRAILING na sufiks. Uklonjeni dio niza također je uključen [remstr].
Na primjer:
SELECTTRIM(LEADING'a'FROM'aaaaabcdaaa')
Vraća "bcdaaa".
Također možete koristiti funkciju RTRIM() za uklanjanje znakova s desne strane niza i LTRIM() za uklanjanje znakova s lijeve strane.
6. ZAMIJENITI()
Funkcija REPLACE() zamjenjuje podniz u nizu novim podnizom. Sintaksa:
REPLACE(original_string, substring_to_replace, new_substring)
Original_string je ulazni niz u kojem želite izvršiti zamjene. Substring_to_replace je podniz koji zamjenjujete u izvornom_nizu. A new_substring je niz koji stavljate u originalni_string.
Na primjer:
SELECTREPLACE('MICROHARD', 'HARD', 'SOFT')
Rezultat će biti "MICROSOFT".
7. INSTR()
Koristite funkciju INSTR() da pronađete početnu poziciju podniza unutar niza. Djeluje slično funkciji CHARINDEX() u Oracle poslužiteljima. Ili opću funkciju POSITION() koja se koristi u PostgreSQL baze podataka.
Sintaksa je:
INSTR(string, substring [, start_position [, occurrence]])
Niz je izvorni niz za koji želite pronaći podniz. Podniz je ono što tražite u nizu. Početni_položaj (neobavezno) mjesto je na kojem počinjete. Ako nije navedeno, pretraživanje počinje od početka niza.
Pojava (neobavezno) je podniz koji želite pronaći. Ako pojavljivanje nije navedeno, funkcija vraća prvo pojavljivanje. Funkcija izvodi pretraživanja bez obzira na velika i mala slova.
Na primjer:
SELECTINSTR('CORPORATE FLOOR', 'OR')
Rezultat će biti 2.
8. PRAVO()
Ova funkcija vraća krajnje desne znakove niza. Uključuje niz i duljinu (len) znakova koje treba vratiti kao argumente.
Sintaksa je:
RIGHT(str, len)
Na primjer:
RIGHT('abcdef', 3)
Povratna vrijednost je "def".
SQL također ima funkciju LEFT() koja radi suprotno od funkcije RIGHT(). Vraća prve lijeve znakove niza.
Sintaksa:
LEFT(str, len)
Na primjer:
SELECTLEFT('Microsoft', 5)
Rezultat će biti "Mikro".
9. UMETNUTI()
Funkciju INSERT() možete koristiti za promjenu niza umetanjem novog niza. Također možete odrediti duljinu i položaj za dodavanje niza, ali to su izborni argumenti. Također možete umetati zapise u tablice baze podataka koristeći SQL.
Sintaksa je:
INSERT(string, position, length, new_string)
Niz je izvorni niz koji želite umetnuti. Pozicija je mjesto gdje želite umetnuti novi _string. Duljina je broj znakova koje treba zamijeniti, a new_string je niz koji treba umetnuti.
Za donji SQL
SELECTINSERT('abcdefgh', 8, 2, 'IJKL')
Rezultat je "abcdefgIJKL"
10. PONOVITI()
Koristite funkciju REPEAT() za množenje niza prema željenom broju. Sintaksa je:
REPEAT(string, number)
Funkcija uzima niz i broj ponavljanja kao argumente. Na primjer:
SELECTREPEAT('MUO', 3)
Rezultat je "MUOMUOMUO."
Zašto učiti o funkcijama niza?
SQL nudi razne funkcije i operatore za rad s nizovima; ovo su samo najčešći.
Ako radite s relacijskim bazama podataka, neophodno je naučiti funkcije SQL nizova. Poznavanje ovih funkcija pomoći će vam da učinkovito manipulirate i pohranjujete podatke.
Učinkovito ćete izvršiti čišćenje, formatiranje i izdvajanje podataka. Također ćete savladati usporedbu nizova, sortiranje i podudaranje uzoraka. To su danas bitne vještine u optimizaciji poslovnih rezultata.