> I create a db : createdb geo
> I log into the db : psql geo
> I create a table named poly :
> geo=# create table poly (parc varchar(15), graphic polygon);
>
> I populate the table :
> insert into poly values('A52','(2,1),(1,3),(2,5),(4,6),(6,4),(5,2)');
> insert into poly values('A135','(3,3),(7,4),(8,2),(4,1)');
>
> Now I would look if the first polygon overlaps the second using the
> varchars for retriving the poly.
> I could do it so :
> geo=# select '((2,1),(1,3),(2,5),(4,6),(6,4),(5,2))'::polygon &&
> '((3,3),(7,4),(8,2),(4,1))'::polygon;
> ?column?
> ----------
> t
> (1 row)
> Now, how can I do to have something like :
> geo=# select graphic::polygon from poly where parc='A52' && select
> graphic::polygon from poly where parc='A135';
SELECT a.graphic && b.graphic FROM poly a, poly b WHERE a.parc='A52' AND b.parc='A135';
But if you want to find all overlaps
SELECT a.parc, b.parc FROM poly a, poly b WHERE a.graphic && b.graphic;