SQL - TRIM() Function



The SQL TRIM() function is used to remove the white spaces from the strings.

It returns a new string by removing all the white spaces or other specified characters from the start, end, or both sides of the given String.

Note − By default, the TRIM() function removes the space character from both the start and end of the string.

This TRIM() function accepts a string as a parameter, that you need to trim and an optional String representing the prefix or suffix to be removed. If you pass the optional parameter as an argument to this function, it removes the leading, trailing, or both from the given String. You must use the FROM clause in between both arguments.

For example, if you pass '$' as an optional parameter, this function removes all the leading and trailing dollar signs.

The optional argument specifies which side of the string to trim −

  • BOTH − It removes characters specified from the start and end of a String (default positional behaviour).
  • LEADING − It removes characters specified from the start of a string.
  • TRAILING − It removes characters specified from the end of a string.

Syntax

Following is the syntax of the SQL TRIM() function −

TRIM ( [ LEADING | TRAILING | BOTH ] [characters FROM ] string )
Or
TRIM ( [ characters FROM ] string )
Or
TRIM ( string )

Parameters

  • str − It is a string that needs to be trimmed.

Return value

This function returns a trimmed string.

Example

In the following example,we are using the SQL TRIM() function to remove the white spaces on both sides from the string ‘ hello ‘.

SELECT TRIM('    hello   ');

Output

Following is the output of the above query −

+----------------------+
| TRIM('    hello   ') |
+----------------------+
| hello                |
+----------------------+

Example

In the following example, we are using the FROM clause inside the TRIM() function, and using this function, we are trying to remove the list of possible characters ‘#.,$^’ from the string ' # hello .'.

SELECT TRIM( '#.,$^ ' FROM '     #     hello    .') AS Output;

Output

On executing the above query, it will produce the following output −

+--------------+
| Output       |
+--------------+
| hello        |
+--------------+

Example

Using the LEADING clause, you can remove the specified characters from the start of the String.

In the following example,we are using the LEADING and FROM clauses inside the TRIM() function to remove the specified characters '#,$ ' from the starting of the string ' # test this #.'.

SELECT TRIM(LEADING '#,$ ' FROM  '     #     test this    #.') AS Result;

Output

The above statement produces the following output −

+-----------------+
| Result          |
+-----------------+
| test this    #. |
+-----------------+

Example

You can also remove the specified characters from the end of the String using the TRAILING clause.

In this example, we are using the TRAILING and FROM clauses inside the TRIM() function to remove the specified characters '#,.!' from the end of the String ' # test this #'.

SELECT TRIM(TRAILING '#,.!' FROM  '     #     test this    #') AS Result;

Output

Following is the output of the above query −

+----------------------+
| Result               |
+----------------------+
|      #     test this |
+----------------------+

Example

Using the BOTH clause you can remove specified characters from the beginning and end of a string.

SELECT TRIM(BOTH '##$' FROM '##$12345##$') AS Result;

Output

After executing the above query, it produces the following output −

+--------+
| Result |
+--------+
| 12345  |
+--------+

Example

You can also pass the table column as an argument to the TRIM() function to remove all the white-spaces from the content of the column. Assume we have created a table with the name Customers using the CREATE statement as follows −

CREATE TABLE CUSTOMERS(    
ID INT NOT NULL,    
FIRST_NAME VARCHAR (20),
LAST_NAME VARCHAR(20),
AGE INT NOT NULL,    
ADDRESS CHAR (25) ,    
SALARY DECIMAL (18, 2));

Now let's insert four records into the customers table using the INSERT statement as follows −

INSERT INTO CUSTOMERS VALUES (1, 'Ramesh','KUMAR', 32, 'Ahmedabad', 2000.00 ); 
INSERT INTO CUSTOMERS VALUES (2, 'Khilan','Verma', 25, 'Delhi', 1500.00 ); 
INSERT INTO CUSTOMERS VALUES (3, 'kaushik','Gupta', 23, 'Kota', 2000.00 ); 
INSERT INTO CUSTOMERS VALUES (4, 'Chaitali','Pal', 25, 'Mumbai', 6500.00 );

The Following SQL query removes all the leading and trailing spaces entities of the values of the column LAST_NAME in the Customers table −

SELECT ID, FIRST_NAME, TRIM(LAST_NAME) AS TRIM_LAST_NAME FROM CUSTOMERS;

Output

Following is the output of the above query −

+----+------------+----------------+
| ID | FIRST_NAME | TRIM_LAST_NAME |
+----+------------+----------------+
|  1 | Ramesh     | KUMAR          |
|  2 | Khilan     | Verma          |
|  3 | kaushik    | Gupta          |
|  4 | Chaitali   | Pal            |
+----+------------+----------------+
sql-string-functions.htm
Advertisements