[Gfoss] intersezione

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?

On Thu, Jan 28, 2010 at 12:02:11AM +0100, ACQUATI CLAUDIO wrote:

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...".

Che versione di PostGIS ? E di GEOS ?
Quanti record nelle due tabelle ? Che tipo di geometrie ? Di quale peso ?
Potresti soffrire di qualche memory leak di uno dei due... sarebbe interessante
indagare.

--strk;

  () Free GIS & Flash consultant/developer
  /\ http://foo.keybit.net/~strk/services.html