RIGHT (Transact-SQL)

THIS TOPIC APPLIES TO: yesSQL Server (starting with 2008)yesAzure SQL DatabaseyesAzure SQL Data Warehouse yesParallel Data Warehouse

Returns the right part of a character string with the specified number of characters.

Topic link icon Transact-SQL Syntax Conventions


RIGHT ( character_expression , integer_expression )  


Is an expression of character or binary data. character_expression can be a constant, variable, or column. character_expression can be of any data type, except text or ntext, that can be implicitly converted to varchar or nvarchar. Otherwise, use the CAST function to explicitly convert character_expression.

Is a positive integer that specifies how many characters of character_expression will be returned. If integer_expression is negative, an error is returned. If integer_expression is type bigint and contains a large value, character_expression must be of a large data type such as varchar(max).

Return Types

Returns varchar when character_expression is a non-Unicode character data type.

Returns nvarchar when character_expression is a Unicode character data type.

Supplementary Characters (Surrogate Pairs)

When using SC collations, the RIGHT function counts a UTF-16 surrogate pair as a single character. For more information, see Collation and Unicode Support.


A: Using RIGHT with a column

The following example returns the five rightmost characters of the first name for each person in the AdventureWorks2012 database.

SELECT RIGHT(FirstName, 5) AS 'First Name'  
FROM Person.Person  
WHERE BusinessEntityID < 5  
ORDER BY FirstName;  

Here is the result set.

First Name  

(4 row(s) affected)  

Examples: Azure SQL Data Warehouse and Parallel Data Warehouse

B. Using RIGHT with a column

The following example returns the five rightmost characters of each last name in the DimEmployee table.

-- Uses AdventureWorks  

SELECT RIGHT(LastName, 5) AS Name  
FROM dbo.DimEmployee  
ORDER BY EmployeeKey;  

Here is a partial result set.


C. Using RIGHT with a character string

The following example uses RIGHT to return the two rightmost characters of the character string abcdefg.

-- Uses AdventureWorks  

SELECT TOP(1) RIGHT('abcdefg',2) FROM dbo.DimProduct;  

Here is the result set.


See Also

CAST and CONVERT (Transact-SQL)
Data Types (Transact-SQL)
String Functions (Transact-SQL)