Remplazar texto en PostgreSQL

En este post te mostraré cómo usar la función replace de PostgreSQL, misma que funciona para remplazar parte de un texto por otro, muy útil para cuando queremos modificar parte del texto de una columna en una consulta.

Función replace en PostgreSQL

La función replace toma 3 argumentos que son, en orden:

  1. El texto sobre el que se va a trabajar
  2. La búsqueda
  3. El remplazo

Esta función puede ser usada para actualizar una tabla, por ejemplo, algo así:

update tabla set columna = replace(columna, búsqueda, replace);

Veamos con un ejemplo.

Ejemplo para remplazar texto en PostgreSQL

Tengo una tabla con fechas como cadena, pero las fechas tienen la letra T para separar la fecha de la hora. Así:

Lo que quiero remplazar es esa T por un espacio en blanco, momento de usar la función replace en psql. Para ello ejecuto la siguiente consulta:

Ahora las fechas son:

Por cierto, es importante notar que en este caso el remplazo es global, es decir, si hubiera más letras T en esa columna, todas se habrían remplazado.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

2 comentarios en “Remplazar texto en PostgreSQL”

  1. Pablo Dante Peralta

    Hola, buen día.
    Tengo el siguiente caso y no puedo resolverlo.
    Si yo tengo el nombre de una persona “Manzo Alfredo Daniel”. Y, deseo reemplazar el primer espacio en blanco de la cadena con una “,” (por ejemplo). Si utilizo lo siguiente:
    “Update Tabla1 set PersApeNomb = replace(PersApeNomb, ‘ ‘, ‘,’) where Id=1025;”
    Eso me va a reemplazar todos los espacios con la coma.
    De qué forma puedo reemplazar la primera ocurrencia o espacio?
    Se puede en el segundo parámetro de la función hacer algo como para “ataje” solamente ese espacio en blanco y lo cambie!!?
    Muy buen sitio.
    Un cordial saludo

Dejar un comentario