I this case the right query looks like this: SELECT gid, ST_Value(rast, geom) val FROM yourraster table, yourpointtable WHERE ST_Intersects(rast, geom)
Make sure to tile and index your raster properly (smaller is better). You can do this at import time. The result for cell outside any polygon will be "null". Pierre > -----Original Message----- > From: postgis-users-boun...@postgis.refractions.net [mailto:postgis-users- > boun...@postgis.refractions.net] On Behalf Of Francois Hugues > Sent: Monday, May 28, 2012 9:06 AM > To: PostGIS Users Discussion > Subject: [postgis-users] RE : get unique values from raster intersecting > apolygon > > I want one value per red point (which are raster data). > > The gid of one polygon will appear as many times as necessary regarding how it > intersects the raster. > > Hugues. > > > -------- Message d'origine-------- > De: postgis-users-boun...@postgis.refractions.net de la part de Pierre Racine > Date: lun. 28/05/2012 14:24 > À: PostGIS Users Discussion > Objet : Re: [postgis-users] get unique values from raster intersecting > apolygon > > You want one value per polygon or one value per red point? It is not clear to > me > from your drawing. > > Pierre > > > -----Original Message----- > > From: postgis-users-boun...@postgis.refractions.net [mailto:postgis-users- > > boun...@postgis.refractions.net] On Behalf Of Francois Hugues > > Sent: Saturday, May 26, 2012 5:29 PM > > To: postgis-users@postgis.refractions.net > > Subject: [postgis-users] get unique values from raster intersecting a > > polygon > > > > Hello list, > > > > I have to get values from raster where they intersect polygons from a layer > with > > numerous polygons which have shared boundaries, but I don't want to have > > duplicate values from raster. The final result must be something like : gid > > | val. > > > > To explain my case, I made a picture. > > > > I think ST_intersection could help but I don't know what will be the exact > result. > > In my example, we have a grid (a DEM for example), each red point is the > > value > > in the centre of each cell and two polygons A and B. I think cells totally > > within > > polygons are not a problem, but in green I have highlighted some ambiguous > > cases : > > - 1 and 2 are cells shared by both polygons but not in the same proportions > > and > I > > would like to get value 1 for polygon A but not for B and value 2 for > > polygon B > > but not for A > > - What will be the result for cell number 3 and for the other green cell > > without > > number (and for all the ones which are not totally within a polygon) ? I > > think > the > > value is the same for the whole cell (st_dumpaspolygon) and will be returned > > whatever the part of the cell covered by the polygon, but if someone could > > confirm. > > > > If st_intersection use st_DumpAsPolygon, could it be better to work directly > with > > this polygonized table using its own gist index and dealing with shared > > areas of > > cells between different polygons ? > > > > Hugues. > > > > > > > > > > _______________________________________________ > postgis-users mailing list > postgis-users@postgis.refractions.net > http://postgis.refractions.net/mailman/listinfo/postgis-users _______________________________________________ postgis-users mailing list postgis-users@postgis.refractions.net http://postgis.refractions.net/mailman/listinfo/postgis-users