16 Aralık 2020 Çarşamba

PostGIS ST_DISTANCE

Giriş
İmzası şöyle
ST_Distance(geometry g1, geometry g2);
Örnek
İki nokta arasındaki mesafeyi şöyle buluruz.
SELECT ST_Distance(ST_GeomFromText('POINT(27.185425 88.124582)',4326),
 ST_GeomFromText('POINT(27.1854258 88.124500)', 4326));
Örnek
Tabloya yeni bir sütun ekleyelim ve index koyalım
ALTER TABLE clients_details_locations ADD COLUMN geom geometry(Point, 4326);

UPDATE clients_details_locations 
   SET geom = ST_SetSRID(ST_MakePoint(longitude , latitude), 4326);

CREATE INDEX clients_details_locations_geom_idx  ON clients_details_locations 
  USING GIST (geom);
Bir noktaya en yakın noktaları bulmak için şöyle yaparız
SELECT ... order by st_distance(geom,client_point)


Hiç yorum yok:

Yorum Gönder