MySQL RTRIM() 函式



MySQL 的RTRIM()函式用於刪除給定字串末尾的所有空格。它接受一個字串值作為引數,並透過刪除字串右側的任何空白字元(例如空格、製表符或換行符)來返回結果。

語法

以下是 MySQL RTRIM() 函式的語法:

RTRIM(str)

引數

此函式接受一個字串值作為引數。

返回值

此函式返回已修改的字串,其中已刪除尾隨空格。

示例

在下面的示例中,我們使用 RTRIM() 函式刪除字串“    Tutorialspoint    ”末尾的空格:

SELECT RTRIM('    Tutorialspoint    ');

以下是上述程式碼的輸出:

RTRIM('    Tutorialspoint    ')
    Tutorialspoint

示例

您還可以透過將數值轉換為字串來將它們作為引數傳遞給此函式:

SELECT RTRIM(' 5578   ');

獲得的輸出如下:

RTRIM(' 5578  ')
5578

示例

如果傳遞給此函式的引數為 NULL,則返回 NULL:

SELECT RTRIM(NULL );

我們得到以下輸出:

RTRIM(NULL )
0x

如果停用--binary-as-hex值,則上述查詢的結果如下:

SELECT RTRIM(NULL );

我們得到以下輸出:

RTRIM(NULL )
NULL

示例

您還可以使用此函式刪除表列值的尾隨空格。

讓我們建立一個名為“PLAYERS_TABLE”的表,並使用 CREATE 和 INSERT 語句向其中插入記錄,如下所示:

CREATE TABLE PLAYERS_TABLE(
   ID INT,
   First_Name VARCHAR(255),
   Last_Name VARCHAR(255),
   Date_Of_Birth date,
   Place_Of_Birth VARCHAR(255),
   Country VARCHAR(255),
   PRIMARY KEY (ID)
);

現在,讓我們使用 INSERT 語句向其中插入記錄:

INSERT INTO PLAYERS_TABLE VALUES
(1, 'Shikhar    ', 'Dhawan', DATE('1981-12-05'), 'Delhi', 'India'),
(2, 'Jonathan    ', 'Trott', DATE('1981-04-22'), 'CapeTown', 'SouthAfrica'),
(3, 'Kumara    ', 'Sangakkara', DATE('1977-10-27'), 'Matale', 'Srilanka'),
(4, 'Virat    ', 'Kohli', DATE('1988-11-05'), 'Delhi', 'India'),
(5, 'Rohit    ', 'Sharma', DATE('1987-04-30'), 'Nagpur', 'India'),
(6, 'James    ', 'Anderson', DATE('1982-06-30'), 'Burnley', 'England');

獲得的 PLAYERS_TABLE 如下:

ID First_Name Last_Name Date_Of_Birth Place_Of_Birth Country
1 Shikhar     Dhawan 1981-12-05 Delhi India
2 Jonathan     Trott 1981-04-22 CapeTown SouthAfrica
3 Kumara     Sangakkara 1977-10-27 Matale Srilanka
4 Virat     Kohli 1988-11-05 Delhi India
5 Rohit     Sharma 1987-04-30 Nagpur India
6 James     Anderson 1982-06-30 Burnley England

以下查詢刪除 First_Name 列值的尾隨空格:

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

輸出

執行上述程式碼後,我們得到以下輸出:

ID First_Name Last_Name Country RTRIM(First_Name)
1 Shikhar     Dhawan India Shikhar
2 Jonathan     Trott SouthAfrica Jonathan
3 Kumara     Sangakkara Srilanka Kumara
4 Virat     Kohli India Virat
5 Rohit     Sharma India Rohit
6 James     Anderson England James

示例

此外,您可以將 RTRIM() 函式與UPDATE語句一起使用來刪除列中的尾隨空格。

在下面的示例中,我們正在更新 'PLAYERS_TABLE' 中的 'First_Name' 列:

UPDATE PLAYERS_TABLE SET First_name = RTRIM(First_name);

輸出

獲得的輸出如下:

Query OK, 6 rows affected (0.02 sec)
Rows matched: 6  Changed: 6  Warnings: 0

驗證

您可以使用以下 SELECT 查詢驗證所做的更改:

SELECT * FROM PLAYERS_TABLE;

產生的結果如下:

ID First_Name Last_Name Date_Of_Birth Place_Of_Birth Country
1 Shikhar Dhawan 1981-12-05 Delhi India
2 Jonathan Trott 1981-04-22 CapeTown SouthAfrica
3 Kumara Sangakkara 1977-10-27 Matale Srilanka
4 Virat Kohli 1988-11-05 Delhi India
5 Rohit Sharma 1987-04-30 Nagpur India
6 James Anderson 1982-06-30 Burnley England

示例

我們還可以將 RTRIM() 函式與WHERE子句一起使用。

在這裡,我們刪除了國家/地區不是“INDIA”的球員名稱的尾隨空格:

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

輸出

獲得的輸出如下:

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

驗證

您可以使用以下 SELECT 查詢驗證所做的更改:

SELECT * FROM PLAYERS_TABLE;

獲得的表如下:

ID First_Name Last_Name Date_Of_Birth Place_Of_Birth Country
1 Shikhar     Dhawan 1981-12-05 Delhi India
2 Jonathan Trott 1981-04-22 CapeTown SouthAfrica
3 Kumara Sangakkara 1977-10-27 Matale Srilanka
4 Virat     Kohli 1988-11-05 Delhi India
5 Rohit     Sharma 1987-04-30 Nagpur India
6 James Anderson 1982-06-30 Burnley England
mysql-rtrim-function.htm
廣告