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-beräkningen returnerar 110,611186 km
Den på din webbplats returnerar 111,19 km alltså en skillnad på 580 m . Den skillnaden beror på att din onlineräknare använder enkel matematik under antagande om en sfärisk jorden, medan Oracle använder den korrekta ellipsoiden jordens form (WGS84-ellipsoiden).
Du kan se skillnaden på https://www.fai.org/page/world -avståndskalkylator Om du väljer WGS84 jordmodell (WGS84-ellipsoiden) så får du samma resultat som Oracle (110.611186562098). Om du ändrar den till FAI Sphere då får du 111.19492643325476, samma som din komparator.
Rätt sträcka är 110,611 km. Huruvida det är viktigt att beräkna den med 580 m avstånd beror på din applikation. Om du mäter korta avstånd (som en km eller mindre) är felet försumbart. Men för långa avstånd kan det vara betydande. Här skulle det innebära att missa ett mål med 1/2 km!
Det visar vikten av att använda rätt jordmodell för dessa beräkningar.
EDIT: Och Oracle-representationen (och i stort sett alla GIS-verktyg) är longitud, latitud . Om du byter siffror kommer du att få väldigt olika resultat.