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
Изчислението на Oracle връща 110,611186 km
Този на вашия сайт връща 111,19 км така че разлика от580 м . Тази разлика е, защото вашият онлайн калкулатор използва проста математика, приемайки сферична земя, докато Oracle използва правилния елипсоид формата на земята (елипсоида WGS84).
Можете да видите разликата на https://www.fai.org/page/world -разстояние-калкулатор Ако изберете WGS84 земен модел (елипсоидът WGS84), тогава получавате същия резултат като Oracle (110.611186562098). Ако го промените на FAI Sphere тогава получавате 111.19492643325476, същото като вашия компаратор.
Правилното разстояние е 110,611 км. Дали изчисляването му с разстояние от 580 m е важно зависи от вашето приложение. Ако измервате къси разстояния (като километър или по-малко), грешката е незначителна. Но за дълги разстояния може да бъде значително. Тук това би означавало да пропуснете цел с 1/2 км!
Това наистина показва важността на използването на правилния земен модел за тези изчисления.
РЕДАКТИРАНЕ: А представянето на Oracle (и почти всички ГИС инструменти) е дължина, ширина . Ако размените числата, тогава ще получите много различни резултати.