select sdo_geom.sdo_distance(
sdo_geometry(2001, 4326, sdo_point_type(40.0, 10.0, null), null, null),
sdo_geometry(2001, 4326, sdo_point_type(40.0, 11.0, null), null, null),
0.01,
'unit=KM'
) as distance
from dual;
DISTANCE
----------
110.611186
De Oracle-berekening geeft 110,611186 km
Degene op uw site retourneert 111,19 km dus een verschil van 580 m . Dat verschil is omdat uw online rekenmachine eenvoudige wiskunde gebruikt, uitgaande van een bolvormige aarde, terwijl Oracle de juiste ellipsoïde . gebruikt vorm van de aarde (de WGS84-ellipsoïde).
U kunt het verschil zien op https://www.fai.org/page/world -afstandscalculator Als u de WGS84 . kiest aarde-model (de WGS84-ellipsoïde) dan krijg je hetzelfde resultaat als Oracle (110.611186562098). Als je het verandert in FAI Sphere dan krijg je 111.19492643325476, hetzelfde als je vergelijker.
De juiste afstand is 110.611 km. Of het berekenen ervan met 580 m uit van belang is, hangt af van uw toepassing. Als u korte afstanden meet (zoals een km of minder), is de fout verwaarloosbaar. Maar voor lange afstanden kan het aanzienlijk zijn. Hier zou het betekenen dat je een doel met 1/2 km mist!
Het toont wel het belang aan van het gebruik van het juiste aardmodel voor die berekeningen.
BEWERKEN: En de Oracle-representatie (en vrijwel alle GIS-tools) is lengtegraad, breedtegraad . Als je de getallen verwisselt, krijg je heel andere resultaten.