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 àèìòù -----------------
_______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [email protected] http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it.
