PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Query di latitudine e longitudine di PostgreSQL

Ecco un altro esempio che utilizza l'operatore punto:

Configurazione iniziale (deve essere eseguito solo una volta):

create extension cube;
create extension earthdistance;

E poi la domanda:

select (point(-0.1277,51.5073) <@> point(-74.006,40.7144)) as distance;

     distance     
------------------
 3461.10547602474
(1 row)

Nota che points vengono creati con LONGITUDE FIRST . Per la documentazione:

I punti vengono presi come (longitudine, latitudine) e non viceversa perché la longitudine è più vicina all'idea intuitiva dell'asse x e la latitudine all'asse y.

Che è un design terribile... ma è così.

La tua uscita sarà in miglia .

Fornisce la distanza in miglia statutarie tra due punti sulla superficie terrestre.