Функция TRANSLATE переводит символы указанной строки в другие символы, либо переупорядочивает символы в строке. При отсутствии таблицы перекодировки буквенные символы указанной строки просто переводятся из строчных в прописные (например, строчные a-z переводятся в прописные A-Z). Выводной таблицей является таблица1, а вводной таблицей перекодировки является таблица2 (по умолчанию принимается XRANGE('00'x,'FF'x)). По умолчанию в качестве выводной таблицы принимается пустая строка; выводная таблица при необходимости дополняется символами-заполнителями или усекается. По умолчанию символом-заполнителем является пробел. Таблицы могут быть любой длины; в случае дублирования символов во вводной таблице значащим будет первое появление символа.
Ниже приведено несколько примеров: TRANSLATE('abcdef') -> 'ABCDEF' TRANSLATE('abbc','&','b') -> 'a&&c' TRANSLATE('abcdef','12','ec') -> 'ab2d1f' TRANSLATE('abcdef','12','abcd','.') -> '12..ef' TRANSLATE('4123','abcd','1234') -> 'dabc'
Прим. | В последнем примере показано, как использовать функцию TRANSLATE для переупорядочения символов в строке. В примере последний символ любой четырехсимвольной строки, определенной в качестве второго аргумента, перемещается в начало строки. |