From: | Carolina Aldaco <anilorac56(at)yahoo(dot)com(dot)mx> |
---|---|
To: | arturo(at)llanquihuen(dot)cl |
Cc: | Ayuda Posgres <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | muchas gracias, |
Date: | 2005-08-10 20:19:02 |
Message-ID: | 20050810201902.39688.qmail@web30801.mail.mud.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Muchas gracias
Lo de Postgis lo he querido intentar pero no le entiendo al manual, y pues la verdad no se como funcionan sus funciones, podrias asesorarme?
gracias
arturo(at)llanquihuen(dot)cl escribió:
Carolina:
tienes dos problemas en tu consulta
1.el operador "=" no esta definido para objetos geometricos
revisa la el siguiente link y verifica los disponibles
http://www.postgresql.org/docs/8.0/interactive/functions-geometry.html
2. para realizar el where debes definir bien el poligono
en tu caso
select * from "DatosEspaciales"."DEPARE" where "DEPARE"."punto" operador
polygon
'((-99.9044014,16.8184481),(-99.9044003,16.8184485),(-99.9043557,16.8184702),(-99.9043478,16.8184738),(-99.9043253,16.8184919),(-99.9043027,16.8185425),(-99.9042877,16.8186003),(-99.9042539,16.8187052),(-99.9042352,16.8187305),(-99.9042052,16.8187521),(-99.9041751,16.8187666),(-99.9040438,16.8188172),(-99.9039575,16.8188208))';
aca te dejo un pequeño ejemplo
con algunos datos y una consulta
create table datosespaciales (
poligono polygon
);
insert into datosespaciales values (polygon '((1,2),(1,3),(1,4))');
insert into datosespaciales values (polygon '((1,2),(1,3),(1,5))');
insert into datosespaciales values (polygon '((1,4),(1,3),(1,2))');
select * from datosespaciales where poligono ~= (polygon
'((1,2),(1,3),(1,4))');
te recomiendo investigar sobre
Postgis en http://www.postgis.org/
que agrega varias objetos y funciones geograficas para PostgreSQL
yo trabaje con el en aplicaciones de cartografia
y localizacion satelital con muy buenos resultados
saludos
> Tengo esta duda, hago esta consulta desde Pg AdminIII y tambien desde la
> consola y en los dos me sale el mismo error, que puede ser?
>
> select * from "DatosEspaciales"."DEPARE" where
> "DEPARE"."punto"=((-99.9044014,16.8184481),(-99.9044003,16.8184485),(-99.9043557,16.8184702),(-99.9043478,16.8184738),(-99.9043253,16.8184919),(-99.9043027,16.8185425),(-99.9042877,16.8186003),(-99.9042539,16.8187052),(-99.9042352,16.8187305),(-99.9042052,16.8187521),(-99.9041751,16.8187666),(-99.9040438,16.8188172),(-99.9039575,16.8188208));
>
> ERROR: operator does not exist: polygon = record
> HINT: No operator matches the given name and argument type(s). You may
> need to add explicit type casts.
>
> gracias
>
>
> ---------------------------------
> Do You Yahoo!? La mejor conexión a Internet y 2GB extra a tu correo por
> $100 al mes. http://net.yahoo.com.mx
__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
Regístrate ya - http://correo.yahoo.com.mx/
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2005-08-10 21:15:33 | Re: Procesos postgres? |
Previous Message | David Licet | 2005-08-10 20:04:07 | Procesos postgres? |