摘要:在本教程中,我们将向您展示如何使用 MySQL TRIM()
函数从字符串中删除不需要的前导和尾随字符。
MySQL TRIM()
函数简介
用户输入的数据通常不是我们所期望的。有时,它的格式不正确,例如错误的情况,或者有些甚至包含前导空格和尾随空格以及其他不需要的字符。
为了使数据保持正确的格式,在数据库中插入或更新数据之前,需要对其进行清理。数据清理中最重要的任务之一是删除不需要的前导和尾随字符。
MySQL 提供了一个非常有用的字符串函数TRIM()
来帮助您清理数据。下面说明了TRIM()
函数的语法。
TRIM([{BOTH|LEADING|TRAILING} [removed_str]] FROM str);
Code language: SQL (Structured Query Language) (sql)
TRIM
功能提供了许多选项。您可以使用LEADING
、 TRAILING
或BOTH
选项显式指示TRIM()
函数从字符串中删除前导、尾随或同时删除前导和尾随不需要的字符。
默认情况下, TRIM()
函数使用BOTH
选项。
[removed_str]
是您要删除的字符串。如果不指定特定字符串, TRIM()
函数仅删除空格。
st
是您要删除removed_str
字符串。
TRIM()
函数返回删除了不需要的字符的字符串。
请注意,要从字符串中删除前导空格,请使用LTRIM()
函数。要从字符串中删除尾随空格,可以使用RTRIM()
函数。
MySQL TRIM()
函数示例
让我们举一些使用 MySQL TRIM()
函数的示例。
A) 使用 MySQL TRIM()
函数删除前导空格和尾随空格
以下语句使用TRIM()
函数删除字符串中的前导空格和尾随空格。
SELECT TRIM(' MySQL TRIM Function ');
Code language: SQL (Structured Query Language) (sql)
B) 使用 MySQL TRIM()
函数仅删除前导空格
以下语句使用TRIM()
函数仅删除前导空格。
SELECT TRIM(LEADING FROM ' MySQL TRIM Function ');
Code language: SQL (Structured Query Language) (sql)
它相当于以下使用LTRIM()
函数的语句:
SELECT LTRIM(' MySQL TRIM Function ');
Code language: SQL (Structured Query Language) (sql)
C) 使用 MySQL TRIM()
函数仅删除尾随空格
以下语句使用TRIM()
函数仅删除字符串中的尾随空格。
SELECT TRIM(TRAILING FROM ' MySQL TRIM Function ');
Code language: SQL (Structured Query Language) (sql)
它相当于以下使用RTRIM()
函数的语句:
SELECT TRIM(TRAILING FROM ' MySQL TRIM Function ');
Code language: SQL (Structured Query Language) (sql)
D) 使用 MySQL TRIM()
函数删除换行符
以下语句删除字符串末尾的换行符。
SELECT
TRIM(TRAILING '\n' FROM field_name)
FROM table_name;
Code language: SQL (Structured Query Language) (sql)
SELECT
TRIM(TRAILING '\r' FROM field_name)
FROM table_name;
Code language: SQL (Structured Query Language) (sql)
SELECT
TRIM(TRAILING '\r\n' FROM field_name)
FROM table_name;
Code language: SQL (Structured Query Language) (sql)
请注意,根据平台的不同,新行可以是 \n(Unix 或 Linux)、\r (Mac) 或两者 (\r\n)。
E) 使用 MySQL TRIM()
函数更新表中的数据
如果数据已存在于数据库中并且您想要清除空格或任何其他不需要的字符,则可以在UPDATE
语句中使用TRIM()
函数。
我们将从示例数据库中取出products
表进行演示。
以下语句使用 TRIM() 函数删除products
表中的productname
列中的所有空格。
UPDATE products
SET
productname = TRIM(productname);
Code language: SQL (Structured Query Language) (sql)
请注意, TRIM()
函数仅从字符串中删除不需要的前导和/或尾随字符。如果要删除字符串中间不需要的字符,应该使用REPLACE函数。
MySQL LTRIM()
和RTRIM()
函数
如果您只想删除前导或尾随空格,可以使用其他字符串函数: LTRIM()
和RTRIM()
。
以下语句使用LTRIM()
函数删除字符串的前导空格。
SELECT LTRIM(' MySQL LTRIM function');
Code language: SQL (Structured Query Language) (sql)
以下语句使用RTRIM()
函数删除字符串的尾随空格。
SELECT RTRIM('MySQL RTRIM function ');
Code language: SQL (Structured Query Language) (sql)
在本教程中,您学习了如何使用TRIM
函数从字符串中删除不需要的前导和尾随字符。