RIGHT в SQL: взять символы с конца строки
RIGHT(text, n) возвращает последние n символов строки. Синтаксис ниже показан для PostgreSQL; в других СУБД детали отрицательной длины и преобразования типов могут отличаться.
Базовые примеры
SELECT RIGHT('Hello World', 5); -- World
SELECT RIGHT('1234567890', 3); -- 890
SELECT RIGHT('SQL is awesome', 7); -- awesome
SELECT CONCAT('User: ', RIGHT('John Doe', 3)); -- User: DoeВо втором примере аргумент — текст, а не число. Храните идентификаторы с ведущими нулями в текстовом поле, если нули имеют смысл.
Пустые и короткие строки
SELECT RIGHT('abc', 10); -- abc
SELECT RIGHT('abc', 0); -- пустая строка
SELECT RIGHT('abc', -1); -- bc в PostgreSQLВ PostgreSQL отрицательное n означает исключить первые |n| символов. Это особенность данной СУБД: не переносите такой запрос в другой движок без проверки его документации.
Символы и байты
Функция работает с символами текста, а не с произвольным срезом байтов файла. Она не выделяет слово по разделителю и не гарантирует корректную обработку составного визуального символа. Для разбиения имени, пути или номера сначала определите правила исходного формата.