I MySQL er TRIM()
funktionen trimmer mellemrum (eller andre specificerede tegn) fra starten og/eller slutningen af en streng.
Du kan angive, om du vil trimme fra venstre side, højre side eller begge sider af strengen.
Syntaks
Funktionen kan bruges på en af følgende måder:
TRIM([{BEGGE | LEDENDE | TRAILING} [remstr] FRA] str)TRIM([remstr FRA] str)
Hvor str
er strengen, der skal trimmes, og remstr
er et valgfrit argument, der specificerer, hvilket tegn der skal trimmes.
Eksempel 1 – Grundlæggende brug
Her er et grundlæggende eksempel på fjernelse af mellemrum fra begge sider af en streng:
SELECT TRIM(' Irish Wolfhound ') AS Trimmet;
Resultat:
+----------------+| Trimmet |+-----------------+| Irsk ulvehund |+-----------------+
Både det forreste og det efterfølgende rum fjernes. Bemærk, at ethvert mellemrum i strengen forbliver intakt.
For at demonstrere effekten bedre, se her, hvordan den ser ud sammenlignet med den ikke trimmede streng:
SELECT ' Irish Wolfhound ' AS Untrimmed, TRIM(' Irish Wolfhound ') AS Trimmet;
Resultat:
+--------------------+----------------+| Ubeskåret | Trimmet |+--------------------+----------------+| Irsk ulvehund | Irsk ulvehund |+--------------------+----------------+
Hvis du ser godt efter, vil du se, at det første resultat har ekstra plads på begge sider, og det andet har ikke. Dette er endnu tydeligere demonstreret i det næste eksempel.
Flere mellemrum
Hvis du har flere mellemrum, trimmes dem alle:
SELECT ' Irish Wolfhound ' AS Untrimmed, TRIM(' Irish Wolfhound ') AS Trimmet;
Resultat:
+------------------------+-----------------+| Ubeskåret | Trimmet |+-------------------------+----------------+| Irsk ulvehund | Irsk ulvehund |+-------------------------+----------------+Andre tegn
Du er ikke kun begrænset til at trimme mellemrum. Du kan bruge denne funktion til at trimme andre tegn. Her er et eksempel:
VÆLG TRIM('=' FRA '====Irsk ulvehund====') SOM trimmet;Resultat:
+----------------+| Trimmet |+-----------------+| Irsk ulvehund |+-----------------+Du kan også angive flere tegn, men bemærk, at rækkefølgen er vigtig.
SELECT TRIM('=+' FROM '=+Irish Wolfhound+=') AS Trimmet;Resultat:
+------------------------+| Trimmet |+--------------------+| Irsk ulvehund+=|+--------------------+Så du kan trimme et helt ord, hvis du ønsker det:
SELECT TRIM('Irish ' FROM 'Irish Wolfhound') AS Trimmet;Resultat:
+------------+| Trimmet |+-----------+| Ulvehund |+-----------+Trim ledende karakter
Du kan også angive, om du kun vil trimme det førende mellemrum/tegn, det efterfølgende eller begge dele.
Her er et eksempel på trimning af hovedpersonen:
VÆLG TRIM(LEADING '=' FROM '====Irsk Ulvehund====') SOM Trimmet;Resultat:
+----------------------------+| Trimmet |+-----------------------------+| Irsk ulvehund====|+---------------------------+Trim efterfølgende karakter
Trimning af kun det efterfølgende tegn:
SELECT TRIM(TRAILING '=' FROM '====Irsk Ulvehund====') SOM Trimmet;Resultat:
+----------------------------+| Trimmet |+-----------------------------+| ====Irsk ulvehund |+---------------------+Trim både førende og efterfølgende
Som det ses i de tidligere eksempler, er
TRIM()
funktion trimmer begge sider som standard. Du har dog også mulighed for eksplicit at angive dette ved at brugeBOTH
.VÆLG TRIM(BEDE '=' FRA '====Irsk ulvehund====') SOM trimmet;Resultat:
+----------------+| Trimmet |+-----------------+| Irsk ulvehund |+-----------------+Lignende funktioner
Hvis du kun skal trimme indledende mellemrum, kan du overveje at bruge
LTRIM()
. Hvis du kun har brug for at trimme bagerste plads, så overvej at brugeRTRIM()
.