MySQL TRIM() Function



The MySQL TRIM() function is used to remove the spaces or, a specified prefix or suffix from the given string.

The TRIM() function accepts a string value as its first parameter and, optionally, a second parameter that represents the characters to be removed. If the second parameter is not provided, the TRIM() function removes spaces from both ends of the string by default.

Syntax

Following is the syntax of MySQL TRIM() function −

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

Parameters

Following are the parameters of this function −

  • BOTH (optional) − If specified, it removes the leading and trailing occurrences of the characters specified in 'remstr' from the original string.
  • LEADING (optional) − If specified, it removes the leading occurrences of the characters specified in 'remstr' from the original string.
  • TRAILING (optional) − If specified, it removes the trailing occurrences of the characters specified in 'remstr' from the original string.

Return Value

This function returns the string with leading and trailing characters removed based on the specified criteria.

Example

In the following example, we are using the TRIM() function to remove the leading and trailing dollar signs ('$') from the given string ' $$$$$$$Tutorialspoint$$$$$$' −

SELECT TRIM('$' FROM '$$$$$$$Tutorialspoint$$$$$$');

Following is the output of the above code −

TRIM('$' FROM '$$$$$$$Tutorialspoint$$$$$$')
Tutorialspoint

Example

If we haven't provided the optional parameter, this function removes all the leading and tailing spaces from the given string −

SELECT TRIM('    Tutorialspoint    ');

The output obtained is as follows −

TRIM('    Tutorialspoint    ')
Tutorialspoint

Example

You can also pass numerical values as arguments to this function −

SELECT TRIM(0 FROM 00005578000);

We get the output as follows −

TRIM(0 FROM 00005578000)
5578

Example

In here, we use the LEADING clause to trim only the leading characters ('$' sign here) from the string −

SELECT TRIM(LEADING '$' FROM '$$$$$$$Tutorialspoint$$$$$$');

Following is the output of the above code −

TRIM(LEADING '$' FROM '$$$$$$$Tutorialspoint$$$$$$')
Tutorialspoint$$$$$$

Example

Now, we use the BOTH clause to trim both leading and trailing leading and trailing spaces −

SELECT TRIM(BOTH FROM '    Tutorialspoint    ');

The output obtained is as follows −

TRIM(BOTH FROM '    Tutorialspoint    ')
Tutorialspoint

Example

If any of the arguments passed to this function is NULL, it returns NULL −

SELECT TRIM(TRAILING '$' FROM NULL);

We get the output as follows −

TRIM(TRAILING '$' FROM NULL)
0x

Example

You can also use this function to remove spaces or, prefix/suffix strings from the values of a column of a table.

Let us create a table named "PLAYERS_TABLE" and insert records into it using CREATE and INSERT statements as shown below −

CREATE TABLE PLAYERS_TABLE(
   ID INT,
   First_Name VARCHAR(255),
   Last_Name VARCHAR(255),
   Country VARCHAR(255),
);

Now, let us insert records into it using the INSERT statement −

INSERT INTO PLAYERS_TABLE VALUES
(1, '   Shikhar      ', 'Dhawan', 'India'),
(2, '   Jonathan     ', 'Trott', 'SouthAfrica'),
(3, '   Kumara       ', 'Sangakkara', 'Srilanka');

The PLAYERS_TABLE obtained is as follows −

ID First_Name Last_Name Country
1    Shikhar       Dhawan India
2    Jonathan      Trott SouthAfrica
3    Kumara        Sangakkara Srilanka

Following query removes all the leading and trailing spaces entities of the values of the column First_Name −

SELECT ID, First_Name, Last_Name, Country, TRIM(First_Name)
FROM PLAYERS_TABLE;

Output

After executing the above code, we get the following output −

ID First_Name Last_Name Country TRIM(First_Name)
1    Shikhar       Dhawan India Shikhar
2    Jonathan      Trott SouthAfrica Jonathan
3    Kumara        Sangakkara Srilanka Kumara

Example

Additionally, you can use the TRIM() function along with the UPDATE statement to remove both the trailing and leading spaces in a column.

In the following example, we are updating the 'First_Name' column in the 'PLAYERS_TABLE' −

UPDATE PLAYERS_TABLE SET First_name = TRIM(First_name);

Output

Following is the output obtained −

Query OK, 3 rows affected (0.01 sec)
Rows matched: 3  Changed: 3  Warnings: 0

Verification

You can verify the changes done using the following SELECT query −

SELECT * FROM PLAYERS_TABLE;

The result produced is as follows −

ID First_Name Last_Name Country
1 Shikhar Dhawan India
2 Jonathan Trott SouthAfrica
3 Kumara Sangakkara Srilanka

Example

We can also use the TRIM() function along with WHERE clause.

Here, we are removing the leading and trailing spaces for the player names whose country is not "INDIA" −

UPDATE PLAYERS_TABLE SET First_name = TRIM(First_name)
WHERE Country <> 'India';

Output

Following is the output obtained −

Query OK, 2 rows affected (0.01 sec)
Rows matched: 2  Changed: 2  Warnings: 0

Verification

You can verify the changes done using the following SELECT query −

SELECT * FROM PLAYERS_TABLE;

The table obtained is as follows −

ID First_Name Last_Name Country
1    Shikhar       Dhawan India
2 Jonathan Trott SouthAfrica
3 Kumara Sangakkara Srilanka
mysql-trim-function.htm
Advertisements