Cadenas

RIGHT

Toma el número indicado de caracteres del final de una cadena.

Sintaxis

RIGHT(<texto>, <cantidad>)

RIGHT(phone, 3) son los tres últimos caracteres. Una cantidad negativa significa «todo menos el principio»: RIGHT(<texto>, -4) quita los cuatro primeros caracteres. Su contraparte es LEFT, que toma caracteres del principio.

Datos para los ejemplos

employees

namedepartmentsalarybonusphone
Emmabackend1200300+44 7700 900123
Liambackend1000NULLNULL
Oliviafrontend1350150+44 7700 900456
Noahfrontend950NULL+44 7700 900789
Sophiadesign1200200NULL

Estas tablas ya están creadas en el entorno de pruebas y los ejemplos de abajo las usan. ¿Quieres repetirlo en tu propia base de datos? Copia el SQL.

Los últimos caracteres
SELECT RIGHT('PostgreSQL', 3) AS last_three;
last_three
SQL
Las últimas cifras del teléfono
SELECT name,
RIGHT(phone, 3) AS last_digits
FROM employees;
namelast_digits
Emma123
LiamNULL
Olivia456
Noah789
SophiaNULL
Todo menos el principio
SELECT RIGHT('ORD-00042', -4) AS number_part;
number_part
00042

Quitamos los cuatro caracteres ORD- y nos quedamos con el número.

Ten en cuenta

Una cantidad negativa no es un error: significa «todo menos los primeros»: RIGHT('abc', -1) da bc. Si la cantidad sale de una expresión que por casualidad queda negativa, no habrá error.

Una cantidad mayor que la longitud tampoco es un error: RIGHT('SQL', 10) simplemente devuelve SQL.

Los espacios del final también son caracteres: en 'Emma ' el último carácter es un espacio. Quítalos primero con TRIM.

Funciones relacionadas