pg.ddx.io  pgsql-it-generale@postgresql.org mailing list archive  
help / color / mirror / Atom feed
query concatenate
3+ messages / 2 participants
[nested] [flat]

* query concatenate
@ 2013-03-01 11:53  Eugenio Trumpy <frippe12573@hotmail.com>
  0 siblings, 2 replies; 3+ messages in thread

From: Eugenio Trumpy @ 2013-03-01 11:53 UTC (permalink / raw)
  To: pgsql-it-generale


Buongiorno,dovrei eseguire una query che mi restituisca più campi provenienti da più tabelle.Le tabelle sono relazionate 1:M e questa potrebbe essere la situazione
tab 1
key, f1, f2, f3
1, a, b, c
2, d, e, f
3, g, h, i
4, l, m, n

tab2
key, f4, f5
2, oo, pp
2, ooo, ppp
2, o, p
3, r, s

tab3
key, f6, f7
1, t, v
2, v, z
3, j, k

tabn
key, fn, fn+1
...........

tab_risultato
key, f1, f2, f3, f4, f5, f6, f7
1, a, b, c, -, -,t, v
2, d, e, f, o, p, v, z
2, d, e, f, oo, pp, -, -
2, d, e, f, ooo, ppp, -, -
3, g, h, i, r, s, j, k
4, l, m, n, -, -, -, -

ho provato con join ma mi si replicano troppe volte le row.Qualcuno ha suggerimenti?
Grazie
Eugenio 		 	   		  =

^ permalink  raw  reply  [nested|flat] 3+ messages in thread

* Re: query concatenate
@ 2013-03-01 12:04  Gianni Ciolli <gianni.ciolli@2ndquadrant.it>
  parent: Eugenio Trumpy <frippe12573@hotmail.com>
  1 sibling, 0 replies; 3+ messages in thread

From: Gianni Ciolli @ 2013-03-01 12:04 UTC (permalink / raw)
  To: pgsql-it-generale

Ciao Eugenio,

On Fri, Mar 01, 2013 at 11:53:17AM +0000, Eugenio Trumpy wrote:
> ho provato con join ma mi si replicano troppe volte le row.Qualcuno ha suggerimenti?

potresti provare con

  SELECT *
  FROM t1
  LEFT JOIN t2 ON t1.key = t2.key
  LEFT JOIN t3 ON t1.key = t3.key
  ORDER BY t1.key;

che a me dà il seguente output:

   key | f1 | f2 | f3 | key | f4  | f5  | key | f6 | f7 
  -----+----+----+----+-----+-----+-----+-----+----+----
     1 | a  | b  | c  |     |     |     |   1 | t  | v
     2 | d  | e  | f  |   2 | oo  | pp  |   2 | v  | z
     2 | d  | e  | f  |   2 | ooo | ppp |   2 | v  | z
     2 | d  | e  | f  |   2 | o   | p   |   2 | v  | z
     3 | g  | h  | i  |   3 | r   | s   |   3 | j  | k
     4 | l  | m  | n  |     |     |     |     |    | 
  (6 righe)

Saluti,
Dr. Gianni Ciolli - 2ndQuadrant Italia
PostgreSQL Training, Services and Support
gianni.ciolli@2ndquadrant.it | www.2ndquadrant.it


-- 
Sent via pgsql-it-generale mailing list (pgsql-it-generale@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-it-generale



^ permalink  raw  reply  [nested|flat] 3+ messages in thread

* Re: query concatenate
@ 2013-03-01 12:12  Eugenio Trumpy <frippe12573@hotmail.com>
  parent: Eugenio Trumpy <frippe12573@hotmail.com>
  1 sibling, 0 replies; 3+ messages in thread

From: Eugenio Trumpy @ 2013-03-01 12:12 UTC (permalink / raw)
  To: alessio.gennari78@gmail.com; pgsql-it-generale


la query è:
select * from tab1 left join tab2 on tab1.key=tab2.key left join tab3 on tab1.key=tab3.key
E.

Date: Fri, 1 Mar 2013 12:58:30 +0100
Subject: Re: [pgsql-it-generale] query concatenate
From: alessio.gennari78@gmail.com
To: frippe12573@hotmail.com

Secondo me sbagli la condizione di join. Metti un esempio, vediamo se è quello. 
A. 
Il giorno 01/mar/2013 12:53, "Eugenio Trumpy" <frippe12573@hotmail.com> ha scritto:





Buongiorno,dovrei eseguire una query che mi restituisca più campi provenienti da più tabelle.Le tabelle sono relazionate 1:M e questa potrebbe essere la situazione

tab 1
key, f1, f2, f3
1, a, b, c
2, d, e, f
3, g, h, i
4, l, m, n

tab2
key, f4, f5
2, oo, pp
2, ooo, ppp
2, o, p
3, r, s

tab3
key, f6, f7
1, t, v
2, v, z
3, j, k

tabn
key, fn, fn+1
...........

tab_risultato
key, f1, f2, f3, f4, f5, f6, f7
1, a, b, c, -, -,t, v
2, d, e, f, o, p, v, z
2, d, e, f, oo, pp, -, -
2, d, e, f, ooo, ppp, -, -
3, g, h, i, r, s, j, k
4, l, m, n, -, -, -, -

ho provato con join ma mi si replicano troppe volte le row.
Qualcuno ha suggerimenti?

Grazie

Eugenio 		 	   		  
 		 	   		  =

^ permalink  raw  reply  [nested|flat] 3+ messages in thread


end of thread, other threads:[~2013-03-01 12:12 UTC | newest]

Thread overview: 3+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2013-03-01 11:53 query concatenate Eugenio Trumpy <frippe12573@hotmail.com>
2013-03-01 12:04 ` Gianni Ciolli <gianni.ciolli@2ndquadrant.it>
2013-03-01 12:12 ` Eugenio Trumpy <frippe12573@hotmail.com>

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox