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

Re: Unir varias tablas en un solo registro

From: "Calabaza Calabaza" <calalinux(at)gmail(dot)com>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Unir varias tablas en un solo registro
Date: 2008-03-27 21:58:58
Message-ID: 958993320803271458w28f65cexf09d8f09e1d60422@mail.gmail.com (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
l 27/03/08, MIGUEL CANCHAS <mcanchas(at)tsr(dot)com(dot)pe> escribió:
> Tengo 5 tablas y necesito que los datos vayan en un solo registro
>
>  Les muestro unos datos

> Esta es la tabla principal
Bueno, lo primero le puse alias a las tablas...

ficha_tejeduria a
idficha     idfamil      iddescr
125         01           003

ficha_hilados b
idficha     porcentaje    idhilo
125         20X           131
125         50X           172
125         30X           168


mfamilias c
idfamil     nomfamil
01          JERSEY

mdescripcion d
iddescr     nomdescr
003         SIMPLE

mhilos e
idhilo      titulo       desc_hilo
131         19/1         COC
172         12/1         ALGOD. OPEN
168         24/75        COC


> Asi deberia de quedar una combinacion.
> idficha   tela
> 125       JERSEY SIMPLE  20X 19/1 COC 50X 12/1 ALGOD. OPEN 30X 24/75 COC

Luego hice la concatenacion de los campos, asumiendo que todos son de
tipo string...

Select
a.idficha,
c.nomfamil||' '||d.nomdescr||' '||b.porcentaje||' '||e.titulo||' '||e.desc_hilo
||' '||b.porcentaje||' '||e.titulo||' '||e.desc_hilo||'
'||b.porcentaje||' '||e.titulo||' '||e.desc_hilo as tela
from
ficha_tejeduria a
left join mfamilias c on (a.idfamil=c.idfamil)
left join ficha_hilados b on (a.idficha=b.idficha)
left join mdescripcion d on (a.iddescr=d.iddescr)
left join mhilos e on (b.idhilo=e.idhilo)

Pienso que aquí el problema es el from, tienes diferentes datos de la
misma tabla origen,
así como te lo puse pienso que te devolvería el mismo valor en las columnas

b.porcentaje||' '||e.titulo||' '||e.desc_hilo

O sea que o está faltando alguan tabla que no estas mostrando, o está
mal tu diseño de tu BD, podrías enviar una imagen de tu diagrama de
entidad / relación (DER) para ver como es la estructura?

>  Como podria empezar a hacerlo

Mira como lo he hecho, si puedes corrigelo y nos cuentas, sino muestra
el DER a ver que esta faltando o para ver que esta mal diseñado..

>  y si podria tenerlo en una vista seria mucho mejor,

Siempre puedes hacer una vista de una setencia select...

> aunque viendolo bien creo que solo podria ser con una funcion

Abría que verlo mejor!

>  Gracias
Cuando quieras!
-- 
§~^Calabaza^~§ from Villa Elisa, Paraguay
----------------
A hendu hína: TIERRA SANTA - Leyenda
http://foxytunes.com/artist/tierra+santa/track/leyenda

In response to

Responses

pgsql-es-ayuda by date

Next:From: Calabaza CalabazaDate: 2008-03-27 22:19:19
Subject: Re: Unir varias tablas en un solo registro
Previous:From: Miguel Rodríguez PenabadDate: 2008-03-27 21:44:48
Subject: Re: Copiar contenido de un serial a otro campo y concatenar campos

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