I'm going to go out on a limb here, without consulting the source
code, and say that the '=' operator is comparing the representations
of the geomtries, so only geometries that have exactly the same
vertices in exactly the same order starting at exactly the same point
are counted.  The equals() function is allowing for differences in
start point, direction and inconsequential vertices.

YMMV.

P

On Wed, Apr 23, 2008 at 8:22 AM, Rhys Stewart <[EMAIL PROTECTED]> wrote:
> Greetings all,
>
> I have a relation and i am trying to remove duplicate and/or similar
> geometries. I get different results when I use equals(geometry,geometry) and
> geom = geom. While i expect this based on the docs, im getting back more
> results when I use geom = geom than when I use the equals(geom,geom)
> function.
>
> Maybe I am mistaken as to what the differences between equals and = are?
>
> Here are the queries:
>
> select q.objectid,w.objectid, astext(q.the_geom),astext(w.the_geom) from
> ill_second q
> inner join ill_second w on q.the_geom && w.the_geom
>      AND equals(q.the_geom,w.the_geom) --and q.the_geom = w.the_geom
> where q.objectid <> w.objectid
>
> and
>
> select q.objectid,w.objectid, astext(q.the_geom),astext(w.the_geom) from
> ill_second q
> inner join ill_second w on q.the_geom && w.the_geom
>      AND q.the_geom = w.the_geom
> where q.objectid <> w.objectid
>
> Version info:
> "PostgreSQL 8.2.4 on i686-pc-mingw32, compiled by GCC gcc.exe (GCC) 3.4.2
> (mingw-special)"
> "POSTGIS="1.3.2" GEOS="3.0.0rc4-CAPI-1.3.3" PROJ="Rel. 4.5.0, 22 Oct 2006"
> USE_STATS"
>
>
>
>
> Thanks,
> Rhys
>
> _______________________________________________
>  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

Reply via email to