Skip site navigation (1) Skip section navigation (2)

Re: Copiar contenido de un serial a otro campo y concatenar campos

From: Miguel Rodríguez Penabad <penabad(at)gmail(dot)com>
To: "Edwin Quijada" <listas_quijada(at)hotmail(dot)com>
Cc: el-PRiNCiPiTo <el-principito(at)terra(dot)es>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Copiar contenido de un serial a otro campo y concatenar campos
Date: 2008-03-27 21:44:48
Message-ID: 95335e4e0803271444g657cb5bcqb747ada4cdf9cfff@mail.gmail.com (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
>  > Date: Thu, 27 Mar 2008 17:22:54 +0100
>  > From: el-PRiNCiPiTo(at)terra(dot)es
>  > To: pgsql-es-ayuda(at)postgresql(dot)org
>  > Subject: [pgsql-es-ayuda] Copiar contenido de un serial a otro campo y concatenar campos
>  >
>  > Hola a todos,
>  > estoy utilizando una base de datos pgsql para almacenar los datos de un
>  > programa y tengo un par de dudas que supongo serán muy básicas pero
>  > estoy buscando por internet y no veo ninguna solución que me sirva.
>  > La primera duda es que tengo una tabla en la que hay un campo id que es
>  > de tipo serial y necesito añadir otro campo que tenga el mismo valor que
>  > este serial. Desde el programa tendría que cambiar demasiado código para
>  > que lo hiciera así que me preguntaba si hay alguna forma de hacer que la
>  > base de datos inserte el mismo valor que el campo id en el campo nuevo
>  > cada vez que se cree una fila nueva.
>  > La otra duda es parecida pero en lugar de copiar un capo serial querría
>  > que concatenara el valor de tres campos en uno nuevo. También
>  > necesitaría que esto fuera automático cada vez que se crea una fila
>  > nueva porque para hacerlo desde el programa tendría que hacer muchas
>  > modificaciones y puede que me olvidara de algún sitio.
>  >
>  > Muchas gracias

Es cierto que, como dice Edwin, eso lo puede hacer un trigger.
O también crear una vista sobre la tabla como

create view vista as
select id, id as copia, ..., campo1||campo2||campo3 as concatenados
from tabla;

Pero lo de tener 2 campos iguales no lo entiendo. Aparte de
desperdiciar espacio y tener potencialmente problemas, ¿para que lo
necesitas?

Saludos


-- 
Miguel Rodríguez Penabad

In response to

pgsql-es-ayuda by date

Next:From: Calabaza CalabazaDate: 2008-03-27 21:58:58
Subject: Re: Unir varias tablas en un solo registro
Previous:From: Alvaro HerreraDate: 2008-03-27 21:37:31
Subject: Re: Ayuda con Encoding

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group