摘要:在本教程中,您将学习如何使用 SQL LTRIM 函数返回一个从字符串开头移除了指定字符的新字符串。
SQL LTRIM 函数简介 #
LTRIM 函数接收一个字符串,并返回一个从输入字符串开头移除了指定字符的新字符串。
下面是 LTRIM 函数的语法:
LTRIM(string, [trim_characters])Code language: SQL (Structured Query Language) (sql)LTRIM 函数接受两个参数:
string:您想要从中移除前导字符的输入字符串。trim_characters:(可选)您想要修剪的字符组成的字符串。如果省略trim_characters,该函数将默认移除空格。
LTRIM 函数返回一个从输入字符串中移除了所有 trim_characters 的新字符串。它不会修改原始字符串。
在实践中,您会发现 LTRIM 函数在清理用于查询或字符串转换的字符串数据时非常有用。
我们将使用 HR 示例数据库中的 employees 表来演示 LTRIM 函数:

移除前导空格 #
首先,向 employees 表添加一个新行,其名字和姓氏都带有一个前导空格:
INSERT INTO
employees (
employee_id,
first_name,
last_name,
email,
phone_number,
hire_date,
job_id,
salary,
manager_id,
department_id
)
VALUES
(
306,
' John',
' Doe',
'[email protected]',
'#515.123.8191',
'1994-06-07',
1,
8500.00,
205,
11
);Code language: SQL (Structured Query Language) (sql)其次,选择 first_name 以空格开头的员工:
SELECT
first_name,
LTRIM(first_name) AS trimmed_name
FROM
employees
WHERE
first_name LIKE ' %';Code language: SQL (Structured Query Language) (sql)输出
first_name | trimmed_name
------------+--------------
John | JohnCode language: SQL (Structured Query Language) (sql)在这个查询中:
第三,从 first_name 列中移除前导空格:
UPDATE employees
SET
first_name = LTRIM(first_name)
WHERE
first_name LIKE ' %';Code language: SQL (Structured Query Language) (sql)移除特定字符 #
以下查询返回员工 ID 为 306 的名字和电话号码,其中电话号码 phone_number 的前导字符 # 已被移除:
SELECT
first_name,
phone_number,
LTRIM(phone_number, '#') AS plain_phone_number
FROM
employees
WHERE
employee_id = 306;Code language: SQL (Structured Query Language) (sql)输出
first_name | phone_number | plain_phone_number
------------+---------------+--------------------
John | #515.123.8191 | 515.123.8191Code language: SQL (Structured Query Language) (sql)在此示例中,我们使用 LTRIM 函数从电话号码的开头修剪字符 #。
您可以在 UPDATE 语句中使用 LTRIM 函数从电话号码中移除字符 #:
UPDATE employees
SET
phone_number = LTRIM(phone_number, '#')
WHERE
employee_id = 306;Code language: SQL (Structured Query Language) (sql)在条件逻辑中使用 LTRIM 函数 #
以下查询使用 LTRIM 来标记那些姓氏包含前导空格的员工:
SELECT
employee_id,
last_name,
CASE
WHEN last_name != LTRIM(last_name) THEN 'Has leading spaces'
ELSE 'No leading spaces'
END AS status
FROM
employees
ORDER BY
last_name;Code language: SQL (Structured Query Language) (sql)摘要 #
- 使用
LTRIM函数返回一个从输入字符串中移除了指定字符的新字符串。 - 如果您省略 trim_characters,
LTRIM函数将默认移除前导空格。
数据库 #
本教程是否有帮助?