Grazie Luca, per la risposta altamente esaustiva ma dal mio basso punto di vista moooolto complessa. <div>Farò un po' di prove per vedere fino dove arrivo e se ho dubbi. Poi magari riposto qua i miei dubbi.<div><br></div>
<div>Grazie ancora.</div><div><br></div><div><div><br><div class="gmail_quote">2011/6/1 Luca Sigfrido Percich <span dir="ltr"><<a href="mailto:sigfrido@tiscali.it">sigfrido@tiscali.it</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Ciao Luca,<br>
<br>
dipende da come vuoi rappresentare i dati dei reperti avendo come<br>
geometria quella degli strati:<br>
<br>
1. Se vuoi mappare i singoli reperti, fai un Join tra strati e reperti<br>
senza group by; logicamente l'ID di questa view è l'ID univoco dei<br>
reperti e tutti i reperti appartenenti allo stesso strato avranno la<br>
stessa geometria poligonale dello strato, che è poco pratico per<br>
l'interrogazione e inutile per la tematizzazione<br>
<br>
2. Se vuoi rappresentare dati di sintesi sui reperti agganciati agli<br>
strati, crei prima una view facendo una select su reperti con group by<br>
sulla chiave esterna verso strati, quindi l'id della view sarà quello<br>
degli strati, e aggiungerai degli aggregati sui dati dei reperti (min<br>
max med su datazione, conteggio reperti etc); poi una seconda view che<br>
unisce in un join 1:1 la prima view con la tabella strati<br>
<br>
Ma hai una chiave primaria composta da sito, area e us?<br>
<br>
Un giorno in cui sarò in buona aprirò una discussione sul perché i<br>
nostri amati software ci debbano costringere a usare chiavi primarie<br>
intere e a singolo campo :)<br>
<br>
Sig<br>
<br>
Il giorno mer, 01/06/2011 alle 13.56 +0200, Luca Mandolesi ha scritto:<br>
<div><div></div><div class="h5">> Ciao a tutti,<br>
> stamane sono andato a riprendere in mano un mio vecchio problema di visualizzazioni di view tra Qgis e Postgres, memore di una discussione aperta daAndrea Peri un po' di tempo fa [0].<br>
> Tuttavia non ho trovato il modo di far funzionare tale soluzione con il mio caso che ora vi spiego, utilizzando nel concreto il mio caso in archeologia:<br>
> in postgres ho:<br>
> US: layer "strati" con campi gid, sito, area, us e the_geom<br>
> US_table: tabella alfanumerica con dati relativi agli strati e i campi che la identificano: sito, area, us<br>
> Reperti_table: tabella alfanumerica reperti con dentro i reperti di ogni strato e i dati relativi agli strati: sito, area, us<br>
><br>
> US 1:1 US_table<br>
> US_table 1:N Reperti_table<br>
><br>
><br>
> A questo punto ho una view US_+_US_table_view per visualizare i dati degli strati facendo un join sui campi sito, area, us tra US e US_table<br>
> e tutto fila liscio.<br>
> Ma se provo a fondere la US_+_US_table_view con Reperti_table, dove per 1 record di US_+_US_table_view ho N record di Reperti_table, Qgis non ha piùun id univoco per caricare le geometrie.<br>
> Ho provato il metodo di cui sotto [1], ma oltre ad id e geometria, devo portare nella view altri campi come sito, area, us per fare le analisi su Qgis, e ovviamente sono obbligato a inserirle nel group_by (e questo non lo capisco), quindi non posso più avere id univoco.<br>

><br>
> Quindi, nella sostanza, non capisco come fare un join tra 2 tabelle, quando sono in rapporto N:N e fare in modo che la vista sia valida per Qgis.<br>
><br>
> Ci può essere una strada percorribile?<br>
><br>
> ciao e grazie<br>
><br>
> luca<br>
><br>
> [0]: <a href="http://www.mail-archive.com/gfoss@faunalia.it/msg02284.html" target="_blank">http://www.mail-archive.com/gfoss@faunalia.it/msg02284.html</a><br>
><br>
> [1]:<br>
> create view1 as<br>
> select id as new_id, ST_Union(geometry) as new_geom from table group by id<br>
><br>
> create view2 as<br>
> select new_id, new_geom from view1;<br>
><br>
><br>
</div></div>> _______________________________________________<br>
> Iscriviti all'associazione GFOSS.it: <a href="http://www.gfoss.it/drupal/iscrizione" target="_blank">http://www.gfoss.it/drupal/iscrizione</a><br>
> <a href="mailto:Gfoss@lists.gfoss.it">Gfoss@lists.gfoss.it</a><br>
> <a href="http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss" target="_blank">http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss</a><br>
> Questa e' una lista di discussione pubblica aperta a tutti.<br>
> Non inviate messaggi commerciali.<br>
> I messaggi di questa lista non rispecchiano necessariamente<br>
> le posizioni dell'Associazione GFOSS.it.<br>
> 502 iscritti all'11.2.2011<br>
<br>
</blockquote></div><br></div></div></div>