SELECT DISTINCT
PostGIS 지오메트리 에서 연산자 의 정밀도가 무엇인지 궁금 합니다. 내 시스템에서 다음 쿼리는 5 카운트를 제공합니다. 즉, 삽입 된 포인트가 1e-5 미만으로 차이가 나는 경우 동일한 것으로 간주되며 이것이 설치 문제인 PostGIS의 기능인지 확실하지 않습니다. 또는 버그.
그것이 예상되는 행동인지 아는 사람이 있습니까?
CREATE TEMP TABLE test (geom geometry);
INSERT INTO test
VALUES
(St_GeomFromText('POINT (0.1 0.1)')),
(St_GeomFromText('POINT (0.001 0.001)')),
(St_GeomFromText('POINT (0.0001 0.0001)')),
(St_GeomFromText('POINT (0.00001 0.00001)')),
(St_GeomFromText('POINT (0.000001 0.000001)')),
(St_GeomFromText('POINT (0.0000001 0.0000001)')),
(St_GeomFromText('POINT (0.00000001 0.00000001)')),
(St_GeomFromText('POINT (0.000000001 0.000000001)'));
SELECT COUNT(*) FROM (SELECT DISTINCT geom FROM test) AS test;
count
-------
5
(1 row)
나는 사용하고있다 :
$ psql --version
psql (PostgreSQL) 9.3.1
과
SELECT PostGIS_full_version();
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
POSTGIS="2.1.1 r12113" GEOS="3.4.2-CAPI-1.8.2 r3921" PROJ="Rel. 4.8.0, 6 March 2012" GDAL="GDAL 1.10.1, released 2013/08/26" LIBXML="2.7.3" LIBJSON="UNKNOWN" RASTER
OSX 10.9에서