Referencia de funciones

TRANSLATE

Sustituye cada carácter de from por el carácter de la misma posición en to.

PostgreSQL 17.9
TRANSLATE(string, from, to)
string
Cadena de origen
text
from
Caracteres que se sustituyen
text
to
Caracteres de sustitución; los caracteres de from sin pareja se eliminan
text

Valor devuelto

Cadena (text) con los caracteres sustituidos

Ejemplos

Sustituir caracteres por posición

PostgreSQL 17.9
SELECT TRANSLATE('hello', 'el', 'ip') AS replaced;
replaced
hippo

Solo los dígitos de un número de teléfono

PostgreSQL 17.9
SELECT TRANSLATE('+7 (912) 345-67-89', '()- ', '') AS digits;
digits
+79123456789

Vocales en mayúsculas

PostgreSQL 17.9
SELECT member_name,
	TRANSLATE(member_name, 'aeiou', 'AEIOU') AS vowels_up
FROM FamilyMembers;
member_namevowels_up
Headley QuinceyHEAdlEy QUIncEy
Flavia QuinceyFlAvIA QUIncEy
Andie QuinceyAndIE QUIncEy
Lela QuinceyLElA QUIncEy
Annie QuinceyAnnIE QUIncEy
Ernest ForrestErnEst FOrrEst
Constance ForrestCOnstAncE FOrrEst
Wednesday AddamsWEdnEsdAy AddAms

Detalles

A diferencia de REPLACE, la función trabaja con caracteres sueltos, no con una subcadena: TRANSLATE('hello', 'el', 'ip') sustituye e por i y l por p. Si to es más corto que from, los caracteres sobrantes de from se eliminan, así que con un to vacío la función simplemente borra caracteres.

Véase también