मुझे आश्चर्य है कि SELECT DISTINCT
पोस्टजीआईएस ज्यामिति पर ऑपरेटर की सटीकता क्या है। मेरे सिस्टम पर, निम्नलिखित क्वेरी मुझे 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 पर