SQL Academy · Oppitunti

UPPER, LOWER, SUBSTRING, REPLACE

Yhtenäistäkää kirjainkoko, poimikaa alimerkkijonoja sijainnin ja pituuden perusteella ja korvatkaa tekstin sisäisiä kuvioita.

Oppitunti 2/413 vaihetta

UPPER, LOWER, SUBSTRING, REPLACE on ilmainen SQL Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu SQL Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. SQL Academy-kurssilla on yhteensä 4 oppituntia.

Kirjainkoon muuntaminen

Kaksi perusfunktiota:

SELECT UPPER('hello');     -- HELLO
SELECT LOWER('Hello');     -- hello
SELECT INITCAP('hello world');  -- 'Hello World' (PostgreSQL extension)

Miksi kirjainkoko kannattaa normalisoida

Sähköpostiosoitteita pitäisi verrata kirjainkoosta riippumatta, mutta säilyttää niiden alkuperäinen kirjainkoko tallennuksessa. Normalisoi arvot vertailuhetkellä:

SELECT * FROM users WHERE LOWER(email) = LOWER('USER@Example.COM');

-- Or use a functional index:
CREATE INDEX users_email_lower_idx ON users (LOWER(email));

Citext: kirjainkoosta riippumaton tekstityyppi

Käytä citext-laajennusta sarakkeelle, jonka vertailussa kirjainkoolla ei pitäisi koskaan olla merkitystä:

CREATE EXTENSION IF NOT EXISTS citext;
CREATE TABLE users (email CITEXT UNIQUE);

SUBSTRING

Poimi alimerkkijono aloituskohdan ja pituuden perusteella:

SELECT SUBSTRING('PostgreSQL', 1, 4);    -- 'Post'
SELECT SUBSTRING('PostgreSQL' FROM 5);    -- 'greSQL'

-- 1-based indexing, not 0-based

SUBSTRING säännöllisen lausekkeen kanssa

PostgreSQL hyväksyy myös säännöllisen lausekkeen sisältävän mallin:

SELECT SUBSTRING('user@example.com' FROM '@(.+)$');
-- 'example.com'

LEFT ja RIGHT

Lyhyet muodot ”ensimmäiselle N:lle” ja ”viimeiselle N:lle”:

SELECT LEFT('PostgreSQL', 4);     -- 'Post'
SELECT RIGHT('PostgreSQL', 3);    -- 'SQL'

REPLACE

Korvaa alimerkkijonon jokainen esiintymä:

SELECT REPLACE('hello world', 'world', 'SQL');   -- 'hello SQL'
SELECT REPLACE(phone, '-', '');                  -- strip dashes

REGEXP_REPLACE

Korvaa mallin perusteella:

SELECT REGEXP_REPLACE('Order #1234', '[^0-9]', '', 'g');  -- '1234'
SELECT REGEXP_REPLACE(text, '\s+', ' ', 'g');             -- collapse whitespace

LENGTH ja CHAR_LENGTH

Pituus merkkeinä, ei tavuina (Unicode-tietoinen):

SELECT LENGTH('héllo');           -- 5
SELECT CHAR_LENGTH('héllo');      -- 5
SELECT OCTET_LENGTH('héllo');     -- 6  (UTF-8 byte length)

POSITION ja STRPOS

Etsi alimerkkijonon indeksi:

SELECT POSITION('SQL' IN 'PostgreSQL');    -- 8
SELECT STRPOS('PostgreSQL', 'SQL');        -- 8

REVERSE

Käännä merkkijonon merkkien järjestys:

SELECT REVERSE('hello');     -- 'olleh'

Kertaus

Kirjainkoko, alimerkkijonot ja korvaaminen kattavat useimmat tekstin käsittelytarpeet.

  • LOWER/UPPER normalisointiin
  • SUBSTRING osien poimimiseen
  • REPLACE kiinteisiin korvauksiin, REGEXP_REPLACE malleihin

Pikatesti

Mitä SUBSTRING('database', 5, 4) palauttaa?

Aloita maksutta

Opi SQL tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
46
Oppitunnit
183

Usein kysytyt kysymykset

Onko oppitunti ”UPPER, LOWER, SUBSTRING, REPLACE” ilmainen?

Kyllä – oppitunnin ”UPPER, LOWER, SUBSTRING, REPLACE” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko SQL Academy-kurssin, päivitä CoddyKit PROhon. SQL Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”UPPER, LOWER, SUBSTRING, REPLACE”?

Yhtenäistäkää kirjainkoko, poimikaa alimerkkijonoja sijainnin ja pituuden perusteella ja korvatkaa tekstin sisäisiä kuvioita. Harjoittelet SQL Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni SQL Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin SQL Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.

Kuinka kauan ”UPPER, LOWER, SUBSTRING, REPLACE”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä SQL Academy-oppitunnilla?

Kyllä. Jokainen SQL Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Merkkijonojen yhdistäminen: || ja CONCAT
  2. UPPER, LOWER, SUBSTRING, REPLACE
  3. TRIM, LPAD, RPAD
  4. Kokotekstihakujen johdanto (tsvector, to_tsquery)
← Takaisin: SQL Academy