views:

377

answers:

1

I have 8 real values in a table that I'd like to combine into a polygon. I haven't been able to figure out how to create a polygon using these values though. I keep trying variations of

SELECT polygon(lat1,lon1,lat2,lon2,lat3,lon3,lat4,lon4) FROM table;

but keep getting errors about the polygon function not existing or an invalid input syntax for type polygon. Has anyone done this before?

+3  A: 

The syntax for a regular postgres polygon is more like:

insert into geo_table values (1, '((2,2),(3,4),(3,6),(1,1))');

Where 1 is some id and the quoted entry is the polygon. I would expect the query to be similar, you probably need parentheses etc for the coordinates. Typically for geospatial data you want (Lon Lat) coordinates. Postgis also takes WKT statements like:

GeomFromText('POLYGON(long1 lat1, long2 lat2, long3 lat3)')

bvmou
That WKT statement looks like what I want, but the database was created by Drupal (a CMS) so the PostGIS template wasn't used when creating it. Can I convert text to polygon some other way?
Dan Goldstein
I found the instructions on adding PostGIS to a database and got this to work.
Dan Goldstein