本文分类:
Oracle

使用sdo_distance计算两个坐标点之间的距离。

select sdo_geom.sdo_distance(
    mdsys.sdo_geometry(2001, 8307, mdsys.sdo_point_type(经度1, 纬度1, 0), null, null),
    mdsys.sdo_geometry(2001, 8307, mdsys.sdo_point_type(经度2, 纬度2, 0), null, null),
    0.5)
from dual;

其中2001代表位置为单点,8307代表坐标系为WGS84坐标系,即GPS坐标系,0.5为oracle计算时候的误差精度,单位是米,计算结果单位为米,经纬度说明如下:

中文 英文 定义 取值
经度 longitude 地球表面某点随地球自转所形成的轨迹 0-90°,赤道0°,北纬为正数,南纬为负数。
纬度 latitude 地球表面连接南北两极的大圆线上的半圆弧 0-180°,本初子午线0°,东经正数,西经为负数
本文来自 [时光记 - 王智超的个人空间](www.hiwzc.com),转载请注明出处。