[postgis-users] ST_Mapalgebra

Pierre Racine Pierre.Racine at sbf.ulaval.ca
Tue Nov 22 06:33:04 PST 2011


> I have used ST_MapAlgebraExpr but I get the error below.
> 
> 
> select * from (select ST_MapAlgebraExpr(kb.rast, kb1.rast, 'kb1.rast+kb.rast') as
> rast from kb_dsm_clip kb, kb_dsm_clip100 kb1) as r1 limit 5;
> ERROR: missing FROM-clause entry for table "kb1"
> LINE 1: SELECT (KB1.RAST+KB.RAST)::double precision ^
> QUERY: SELECT (KB1.RAST+KB.RAST)::double precision

Try this instead:

SELECT ST_MapAlgebraExpr(kb.rast, kb1.rast, 'rast1 + rast2') as rast 
FROM kb_dsm_clip kb, kb_dsm_clip100 kb1
WHERE st_intersects(kb.rast, kb1.rast)

1) There is no need for a subquery

2) You must refer to the raster using 'rast1' and 'rast2', not their real names

3) I don't know if your rasters are tiled but it is always a good idea to restrict the process to intersecting footprints.

Pierre



More information about the postgis-users mailing list