[Spanish] Error al realizar intersección, Postgis

geodesman juavafer at hotmail.com
Sat Feb 6 12:17:33 PST 2016


Hola a tod at s,

Tengo dos capas de polígonos que quiero intersectar pero no puedo, me da
error. Me explico paso a paso

Forma 1:

-Compruebo que ambas capas se pueden interceptar y devolverán un conjunto no
vacío; FUNCIONA:

select count(*) from psuelos s,pusossuelo u where
st_intersects(s.geom,u.geom)='true'

-Creo una tabla nueva y vacía donde almacenare esta intersección; FUNCIONA:

create table int500 (gid serial PRIMARY KEY, tsuelo INTEGER, tuso INTEGER)

select addgeometrycolumn ('','int500','geom',-1,'MULTIPOLYGON',2)

-Almanceno el resultado de la intersección en la tabla creada; NO
FUNCIONA-mensaje de error que no entiendo:

insert into int500 (tsuelo,tuso,geom) select
s.tsuelo,u.tuso,st_multi(st_intersects(s.geom,u.geom)) from psuelos
s,pusossuelo u where st_intersects(s.geom,u.geom)='true'

ERROR: no existe la función st_multi(boolean)
LINE 1: ... int500 (tsuelo,tuso,geom) select s.tsuelo,u.tuso,st_multi(s...
^
HINT: Ninguna función coincide en el nombre y tipos de argumentos. Puede ser
necesario agregar conversión explícita de tipos.

---------------

Forma 2, similar a la primera pero sin la restricción del tipo de geometría:

-Compruebo que ambas capas se pueden interceptar y devolverán un conjunto no
vacío; FUNCIONA:

select count(*) from psuelos s,pusossuelo u where
st_intersects(s.geom,u.geom)='true'

-Creo una tabla nueva y vacía donde almacenare esta intersección; FUNCIONA:

create table int600 (gid serial PRIMARY KEY, tsuelo INTEGER, tuso INTEGER)

select addgeometrycolumn ('','int600','geom',-1,'GEOMETRY',2)

-Almanceno el resultado de la intersección en la tabla creada; NO
FUNCIONA-mensaje de error que no entiendo:

insert into int600 (tsuelo,tuso,geom) select
s.tsuelo,u.tuso,st_intersects(s.geom,u.geom) from psuelos s,pusossuelo u
where st_intersects(s.geom,u.geom)='true'

ERROR: la columna «geom» es de tipo geometry pero la expresión es de tipo
boolean
LINE 1: ... int600 (tsuelo,tuso,geom) select s.tsuelo,u.tuso,st_interse...
^
HINT: Necesitará reescribir la expresión o aplicarle una conversión de tipo.
--------

Gracias,

Un saludo



--
View this message in context: http://osgeo-org.1560.x6.nabble.com/Error-al-realizar-interseccion-Postgis-tp5249267.html
Sent from the OSGeo Spanish Local Chapter mailing list archive at Nabble.com.


More information about the Spanish mailing list