摘要:在本教程中,您将学习如何使用 SQL RIGHT 函数从字符串的末尾返回指定数量的字符。
SQL RIGHT 函数简介 #
在 SQL 中,RIGHT 函数接收一个字符串,并从字符串的末尾(右侧)返回指定数量的字符。
以下是 RIGHT 函数的语法
RIGHT(string, number_of_characters)Code language: SQL (Structured Query Language) (sql)RIGHT 函数接受两个参数
string:您希望从中返回字符的输入字符串。number_of_characters:您希望从输入字符串中返回的字符数。
RIGHT 函数返回一个字符串,该字符串包含从输入字符串右侧开始的指定数量的字符。
如果输入的 string 或 number_of_characters 为 NULL,则返回 NULL。
基本的 SQL RIGHT 函数示例 #
以下查询使用 RIGHT 函数返回文件名的扩展名
SELECT
RIGHT('resume.pdf', 3) extension;Code language: SQL (Structured Query Language) (sql)输出
extension
-----------
pdfCode language: SQL (Structured Query Language) (sql)提取文件扩展名 #
首先,创建一个名为 performance_evaluations 的新表,用于存储员工的绩效评估
CREATE TABLE performance_evaluations (
employee_id INT PRIMARY KEY,
rating INT NOT NULL,
evaluation_form VARCHAR(255) NOT NULL
);Code language: SQL (Structured Query Language) (sql)其次,向 performance_evaluations 表中插入行
INSERT INTO
performance_evaluations (employee_id, rating, evaluation_form)
VALUES
(101, 4, 'neena.pdf'),
(102, 3, 'lex.pdf'),
(103, 5, 'alexander.doc'),
(104, 3, 'bruce.xls'),
(105, 3, 'david.xls');Code language: SQL (Structured Query Language) (sql)第三,从 performance_evaluations 表中检索数据
SELECT
*
FROM
performance_evaluations;Code language: SQL (Structured Query Language) (sql)输出
employee_id | rating | evaluation_form
-------------+--------+-----------------
101 | 4 | neena.pdf
102 | 3 | lex.pdf
103 | 5 | alexander.doc
104 | 3 | bruce.xls
105 | 3 | david.xlsCode language: SQL (Structured Query Language) (sql)对表数据使用 RIGHT 函数 #
以下查询使用 RIGHT 函数检索员工姓名、评级、评估表以及评估表的扩展名
SELECT
first_name,
rating,
evaluation_form,
RIGHT(evaluation_form, 3) form_extension
FROM
performance_evaluations p
INNER JOIN employees e ON e.employee_id = p.employee_id
ORDER BY
first_name;Code language: SQL (Structured Query Language) (sql)输出
first_name | rating | evaluation_form | form_extension
------------+--------+-----------------+----------------
Alexander | 5 | alexander.doc | doc
Bruce | 3 | bruce.xls | xls
David | 3 | david.xls | xls
Lex | 3 | lex.pdf | pdf
Neena | 4 | neena.pdf | pdfCode language: SQL (Structured Query Language) (sql)在 WHERE 子句中使用 RIGHT 函数 #
以下语句在 WHERE 子句中使用 RIGHT 函数,以查找扩展名为 pdf 或 xls 的评估表
SELECT
first_name,
rating,
evaluation_form,
RIGHT(evaluation_form, 3) form_extension
FROM
performance_evaluations p
INNER JOIN employees e ON e.employee_id = p.employee_id
WHERE
RIGHT(evaluation_form, 3) IN ('pdf', 'xls')
ORDER BY
first_name;Code language: SQL (Structured Query Language) (sql)输出
first_name | rating | evaluation_form | form_extension
------------+--------+-----------------+----------------
Bruce | 3 | bruce.xls | xls
David | 3 | david.xls | xls
Lex | 3 | lex.pdf | pdf
Neena | 4 | neena.pdf | pdfCode language: SQL (Structured Query Language) (sql)将 RIGHT 函数与聚合函数一起使用 #
以下查询将 RIGHT 函数与 COUNT 聚合函数一起使用,以获取每种表单扩展名的计数
SELECT
RIGHT(evaluation_form, 3) form_extension,
COUNT(*) extension_count
FROM
performance_evaluations
GROUP BY
RIGHT(evaluation_form, 3)
ORDER BY
form_extension;Code language: SQL (Structured Query Language) (sql)输出
form_extension | extension_count
----------------+-----------------
doc | 1
pdf | 2
xls | 2Code language: SQL (Structured Query Language) (sql)摘要 #
- 使用
RIGHT函数从字符串的末尾提取指定数量的字符。
数据库 #
本教程是否有帮助?