Verileriniz öngörülmediği için - bir küredeki noktalardır - doğrusal mesafeler bir anlam ifade etmez. Ekvatordaki beş mil, kutup dairesinde 5 milden çok daha küçük bir açıdır. Ama neyse ki PostGIS (> = 1.5) aradığınız cevaba sahiptir:
SELECT * FROM table WHERE ST_DWithin(ST_GeogFromText('SRID=4326;POINT(0,0)'), geography(latlon), 12070);
geography
Sadece bu tür şeyler için tasarlanmış bir türü vardır. Geometriye benzer, ancak sadece EPSG: 4326 kullanır ve onunla çalışan çok daha az işlev vardır.
Yukarıdaki örnekte , ilgi noktası üzerinde ST_GeogFromText () (ayrıca bir ST_GeographyFromText () var ve bir fark olup olmadığından emin değilim ) çağırdım ( SRID parametresi olduğu için düzenli WKT ile çalışabilir) ve latlon sütununu coğrafi konum türüne dökün. Bunların çoğunu yapıyorsanız, tablonuzda bir coğrafya sütunu oluşturmak ve oyuncu kadrosunu tamamen atlamak daha verimli olabilir. Son olarak, ST_DWithin () coğrafya parametrelerini alabilir ve doğrusal mesafelerde doğru olanı yapar.