sql >> Databáze >  >> RDS >> PostgreSQL

PostgreSQL dotaz na zeměpisnou šířku a délku

Zde je další příklad s použitím bodového operátoru:

Počáteční nastavení (je třeba spustit pouze jednou):

create extension cube;
create extension earthdistance;

A pak dotaz:

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

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

Všimněte si, že points jsou vytvořeny pomocí LONGITUDE FIRST . Podle dokumentace:

Body se berou jako (zeměpisná délka, šířka) a ne naopak, protože zeměpisná délka je bližší intuitivní představě osy x a zeměpisné šířky osy y.

Což je hrozný design... ale je to tak.

Váš výstup bude v mil .

Udává vzdálenost v mílích mezi dvěma body na zemském povrchu.



  1. 2 způsoby, jak odstranit duplicitní řádky v Oracle

  2. Pole data a času v MySQL a letní čas – jak mohu odkazovat na hodinu navíc?

  3. Formátujte číslo na 2 desetinná místa

  4. Přednášky:Vylepšení dělení v PostgreSQL 11