[Gfoss] R: elaborazione grafo Postgis

Antonio Falciano afalciano a yahoo.it
Mar 9 Giu 2009 18:46:52 CEST


feurbano a clix.pt ha scritto:
> Una nota "estetica": non dovresti aver bisogno di duplicare la tabella.
> puoi fare riferimento alla stessa tebella nella query 2 volte basta che dai due
> "alias" differenti.
> quindi, a meno di errori, dovrebbe funziare anche come:
> 
> CREATE TABLE centroidi2linee AS
> SELECT ST_MakeLine (a.the_geom, b.the_geom) AS the_geom, a.nome, a.codcom || 
> b.codcom AS codice
> FROM centroidi a, centroidi b;
> ALTER TABLE centroidi2linee ADD COLUMN count SERIAL PRIMARY KEY;
> 
> probabilemnte puoi anche eliminare direttamente le linee che da un punto vanno a
> se stesso.

Infatti! Basta una semplice clausola WHERE:

CREATE TABLE sample_arcs AS
  SELECT ST_MakeLine(a.the_geom, b.the_geom) AS the_geom, a.id AS
from_node, b.id AS to_node
  FROM sample_pts a, sample_pts b
  WHERE b.gid > a.gid;

che nel caso in esame diventa:

[...]
  WHERE b.codcom > a.codcom;

Cosi' si eliminano gli archi duplicati (di verso opposto)!

ciao

-- 
Antonio Falciano
http://www.linkedin.com/in/antoniofalciano




Maggiori informazioni sulla lista Gfoss