[Gfoss] intersezione
Andrea Peri
aperi2007 a gmail.com
Gio 28 Gen 2010 01:18:19 CET
Non entro nel merito della tua necessita',
ma la differenza della quantita' dei risultati e' giusta .
nel caso false, viene selezionato ogni elemento che non si interseca
con almeno un altro elemento (non con tutti quanti) .
Nel caso true, viene selezionato ogni elemento che si interseca con
almeno 1 elemento.
Da qui la differenza del risultato.
Tieni presente che il confronto avviene sempre tra singoli elementi .
Prendi ad esempio l'archivio dei confini comunali della tua regione.
Per fare un caso emblematico: immagina di intersecarlo con un altro
archivio che sia la copia identica del primo archivio, ovvero
una altra copia dei confini comunali, evidentemente ogni comune si
intersecherebbe sempre e con un unico elemento dell'altro archivio
ovvero quello che rappresenta il medesimo comune.
Pero' se chiedi al sistema di restituirti i records che
verificano
st_intersects(comuneA,comuneB) = false
per il primo comune dell'archivio A ti ritornera' tutti i records
dall'altro archivio salvo quello corrispondente al medesimo comune.
per tutti te li ritorna tutti meno 1.
e questo succedera' per tutti i records dell'archivio.
per cui te ne ritorna molti.
se invece gli chiedi di darti quelli che si intersecano (con risultato
true) allora ne trova 1 solo per ogni singolo confronto.
Da qui la differenza dei tempi e l'out-of-memory.
Ciao,
>Db postgres, devo selezionare due attributi degli elementi di un livello che
>non si intersecano con gli elementi di un altro; eseguo quindi la seguente
>query
>SELECT A.CAMPO1, A.CAMPO2
>FROM TAB1 A, TAB2 B
>WHERE ST_INTERSECTS(A.GEOM, B.GEOM) = FALSE
>
>dopo più di mezz'ora che gira la query mi viene restituito l'errore "out of
>memory...".
>Per prova invece di FALSE ho messo TRUE ed in due minuti ho avuto il
>risultato.
>Gli elementi che non si intersecano da un esame a vista sono pochi.
>In entrambe le tabelle ho creato l'indice sulle geometrie (vedi altro post).
>E' forse sbagliato il metodo che ho utilizzato?
--
-----------------
Andrea Peri
. . . . . . . . .
qwerty àèìòù
-----------------
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.faunalia.it/pipermail/gfoss/attachments/20100128/14786489/attachment.htm>
Maggiori informazioni sulla lista
Gfoss