Yksi SQL:n yleisimmistä merkkijonojen käsittelytehtävistä on välilyöntien leikkaaminen tai poistaminen annetusta syötemerkkijonosta.
Tässä opetusohjelmassa opimme RTRIM()-funktiosta, jolla on ratkaiseva rooli merkkijonojen trimmauksessa.
SQL RTRIM()
SQL:ssä RTRIM()-funktio tarkoittaa oikeaa trimmaa. Toiminnon avulla voimme poistaa annetusta merkkijonoarvosta kaikki ja/tai lopussa olevat (oikeimmanpuoleiset) merkit.
Tämä toiminto on erityisen hyödyllinen käsiteltäessä tietoja, jotka saattavat sisältää tarpeettomia välilyöntejä merkkijonojen lopussa, jolloin voimme puhdistaa arvot tietokannasta.
Syntaksi:
SQL:n RTRIM()-funktion syntaksi voi vaihdella hieman tietokantakoneen mukaan. MySQL:ssä syntaksi on seuraava:
RTRIM(merkkijono_trimmiin)
'String_to_trim' määrittää syötemerkkijonon, josta haluamme poistaa kaikki johtavat välilyönnit.
SQL RTRIM() Esimerkki käyttö (MySQL)
Katsotaanpa joitain käytännön esimerkkejä RTRIM()-funktion käyttämisestä. Aloitamme peruskäytöstä ja jatkamme sitten kattamaan joitain edistyneempiä esimerkkejä.
Esimerkki 1: Esimerkkitiedot
Ennen kuin sukeltaa kyselyihin, harkitse esimerkkitaulukkoa, joka sisältää työntekijätiedot seuraavassa esitetyllä tavalla:
Oletetaan, että haluamme noutaa 'job_title' taulukosta, josta ensimmäiset välimerkit on poistettu. Voimme käyttää RTRIM()-funktiota seuraavassa esitetyllä tavalla:
Lähtö:
Esimerkki 2: Erikoismerkkien leikkaaminen
Oletusarvoisesti RTRIM()-funktio poistaa välilyönnit syöttömerkkijonosta. Voimme kuitenkin määrittää tietyt merkit, jotka haluamme poistaa syöttömerkkijonosta.
Esimerkiksi, jos haluat poistaa kaikki sarkainmerkin esiintymät, voimme käyttää '\t'-arvoa seuraavan esimerkin mukaisesti:
SELECT RTRIM( ' \t ' FROM sukunimi) AS trimmed_sukunimi FROM emp;Tämän pitäisi poistaa kaikki sarkainmerkit määritetyn sarakkeen merkkijonoista.
HUOMAUTUS: Voit määrittää minkä tahansa tuetun merkin.
Johtopäätös
Tässä opetusohjelmassa opimme SQL:n RTRIM()-funktiosta selvittääksemme, kuinka tiettyjen merkkien esiintymät voidaan leikata tietystä merkkijonosta.