SQL Server RIGHT 函数从给定表达式中返回最右边的字符。RIGHT 函数使用其第二个参数来决定要返回的字符数及其语法。
SELECT RIGHT(Character_Expression, Value) FROM [Source]
- Character_Expression:它将从此表达式中写出最右边的字符。
- Value:必须从 Character_Expression 中提取的字符数。
RIGHT 函数中的索引位置从 1 开始,而不是 0。在本例中,我们使用以下数据。

SQL Server RIGHT 函数示例
RIGHT 函数从给定字符串中返回指定数量的最右边字符。例如,以下查询从变量中返回最右边的 6 个和 20 个字符。
首先,我们声明了一个带有示例文本的字符表达式。接下来,我们使用它从 @Character_Expression 变量中返回最右边的六个字符。
在下面一行中,我们将第二个参数设置为 20,它大于字符串长度。因此,RIGHT 函数会打印 @Character_Expression 中的所有字母。
DECLARE @Charcater_Expression varchar(50) SET @Charcater_Expression = 'Learn SQL Server' --Using Positive Integer 6 SELECT RIGHT(@Charcater_Expression, 6) AS 'SQLRIGHT' --Searching from specific position – 20 SELECT RIGHT(@Charcater_Expression, 20) AS 'SQLRIGHT'

SQL Server RIGHT 示例 2
RIGHT 函数还允许您从列值中选择最右边的字符。在此 Server 示例中,我们打印 Email 列中所有记录的最右边的九个单词。
SELECT [FirstName]
,[LastName]
,[DepartmentName]
,[Email]
,RIGHT([Email], 9) AS [SQLRIGHT]
FROM [Employe]

如果观察到上面的结果,它没有完美地获取域名,因为我们使用的是固定值。在下面的 String method 示例中,我们展示了如何使用动态值作为第二个参数来准确返回域名。
如何在电子邮件中查找域名?
我们将使用 SQL right 函数查找 Email 列中存在的域名。
SELECT [FirstName]
,[LastName]
,[DepartmentName]
,[Email]
,RIGHT(
[Email]
,(LEN([Email]) - CHARINDEX ('@', [Email]))
) AS [SQLRIGHT]
FROM [Employe]

在 right 函数中,它将使用 LEN 方法查找 Email 的长度。
LEN([Email])
它返回 @ 符号的索引位置。这意味着 CHARINDEX 方法会检查每条记录中 @ 符号的索引位置。
CHARINDEX ('@', [Email])
我们将索引位置从字符串长度中减去。
(LEN([Email]) - CHARINDEX ('@', [Email]))