sql >> Databasteknik >  >> RDS >> Mysql

Hur TRIM()-funktionen fungerar i MySQL

I MySQL, TRIM() funktionen trimmar blanksteg (eller andra specificerade tecken) från början och/eller slutet av en sträng.

Du kan ange om du vill trimma från vänster sida, höger sida eller båda sidor av strängen.

Syntax

Funktionen kan användas på något av följande sätt:

TRIM([{BOTH | LEADING | TRAILING} [remstr] FROM] str)TRIM([remstr FROM] str)

Där str är strängen som ska trimmas och remstr är ett valfritt argument som anger vilket tecken som ska trimmas.

Exempel 1 – Grundläggande användning

Här är ett grundläggande exempel på hur du tar bort blanksteg från båda sidorna av en sträng:

SELECT TRIM(' Irish Wolfhound ') AS Trimmad;

Resultat:

+----------------+| Trimmad |+-----------------+| Irländsk varghund |+-----------------+

Både det främre och efterföljande utrymmet tas bort. Observera att alla mellanslag i strängen förblir intakta.

För att demonstrera effekten bättre, så här ser den ut jämfört med den otrimmade strängen:

VÄLJ ' Irish Wolfhound ' AS Untrimmed, TRIM(' Irish Wolfhound ') AS Trimmed;

Resultat:

+------------------------+----------------+| Otrimmad | Trimmad |+-------------------+------------------------+| Irländsk varghund | Irländsk varghund |+--------------------+----------------+

Om du tittar noga ser du att det första resultatet har extra utrymme på båda sidor och att det andra inte har det. Detta visas ännu tydligare i nästa exempel.

Flera mellanslag

Om du har flera mellanslag trimmas alla:

VÄLJ ' Irish Wolfhound ' AS Untrimmed, TRIM(' Irish Wolfhound ') AS Trimmed;

Resultat:

+------------------------+-----------------+| Otrimmad | Trimmad |+-------------------------+----------------+| Irländsk varghund | Irländsk varghund |+-------------------------+----------------+ 

Andra tecken

Du är inte bara begränsad till att trimma blanksteg. Du kan använda den här funktionen för att trimma andra tecken. Här är ett exempel:

SELECT TRIM('=' FROM '====Irish Wolfhound====') AS Trimmad;

Resultat:

+----------------+| Trimmad |+-----------------+| Irländsk varghund |+-----------------+

Du kan också ange flera tecken, men observera att ordningen är viktig.

SELECT TRIM('=+' FROM '=+Irish Wolfhound+=') AS Trimmad;

Resultat:

+------------------------+| Trimmad |+--------------------+| Irländsk varghund+=|+-------------------+

Så du kan trimma ett helt ord om du vill:

SELECT TRIM('Irish ' FROM 'Irish Wolfhound') AS Trimmad;

Resultat:

+------------+| Trimmad |+-----------+| Varghund |+-----------+

Trimma ledande karaktär

Du kan också ange om du ska trimma bara det inledande utrymmet/tecken, det efterföljande eller båda.

Här är ett exempel på att bara trimma huvudpersonen:

VÄLJ TRIM(LEADING '=' FROM '====Irish Wolfhound====') AS Trimmad;

Resultat:

+----------------------------+| Trimmad |+-----------------------------+| Irländsk varghund====|+---------------------------+

Trimma efterföljande karaktär

Beskär bara det efterföljande tecknet:

SELECT TRIM(TRAILING '=' FROM '====Irish Wolfhound====') AS Trimmed;

Resultat:

+----------------------------+| Trimmad |+-----------------------------+| ====Irländsk varghund |+---------------------------+

Trim både ledande och efterföljande

Som sett i de tidigare exemplen, TRIM() funktion trimmar båda sidor som standard. Men du har också möjlighet att uttryckligen ange detta genom att använda BOTH .

VÄLJ TRIM(BOTH '=' FROM '====Irish Wolfhound====') SOM trimmad;

Resultat:

+----------------+| Trimmad |+-----------------+| Irländsk varghund |+-----------------+

Liknande funktioner

Om du bara behöver trimma inledande mellanslag, överväg att använda LTRIM() . Om du bara behöver trimma efterföljande utrymme, överväg att använda RTRIM() .


  1. Fyll en sträng med inledande nollor så att den är 3 tecken lång i SQL Server 2008

  2. Använd XEvent Profiler för att fånga frågor i SQL Server

  3. MySQL:hur gör man säkerhet på radnivå (som Oracles virtuella privata databas)?

  4. Skapa ett SQL Server-agentschema med T-SQL