24.9 SDO_GCDR.ELOC_ROUTE_DISTANCE
書式
SDO_GCDR.ELOC_ROUTE_DISTANCE(
route_preference IN VARCHAR2,
distance_unit IN VARCHAR2,
start_address IN VARCHAR2,
end_address IN VARCHAR2,
country IN VARCHAR2,
vehicle_type IN VARCHAR2,
print_request_response IN VARCHAR2 DEFAULT 'FALSE'
) RETURN NUMBER;
または
SDO_GCDR.ELOC_ROUTE_DISTANCE(
route_preference IN VARCHAR2,
distance_unit IN VARCHAR2,
start_longitude IN NUMBER,
start_latitude IN NUMBER,
end_longitude IN NUMBER,
end_latitude IN NUMBER,
vehicle_type IN VARCHAR2,
print_request_response IN VARCHAR2 DEFAULT 'FALSE'
) RETURN NUMBER;
説明
2つの場所の間のルート距離を計算します。
入力場所は、単一行アドレスにすることも、地理座標で指定することもできます。
パラメータ
- route_preference
-
ルーティング・プリファレンス。
サポートされる値は、
shortest
、fastest
およびtraffic
です。 - distance_unit
-
距離の単位。
サポートされる値は、
mile
、kilometer
、km
およびmeter
です。 - start_address
-
完全な開始住所(別々のフィールドに形式化されていません)。
- end_address
-
完全な終了住所(別々のフィールドに形式化されていません)。
- country
-
ISOの2文字の国コード。サポートされているコードのリストを表示するには、ISO Online Browsing Platform (OBP)のCountry codesを参照してください。
- start_longitude
-
開始点の経度値。
- start_latitude
-
開始点の緯度値。
- end_longitude
-
終了点の経度値。
- end_latitude
-
終了点の緯度値。
- vehicle_type
-
距離の計算に考慮される車両のタイプ。
サポートされる値は、
auto
およびtruck
です - print_request_response
-
送信されたリクエストおよび受信したレスポンスを印刷するかどうかを決定します。
デフォルトでは、パラメータ値は
FALSE
です。
使用上のノート
ノート:
SDO_GCDR.ELOC_ROUTE_DISTANCE
ファンクションは、Oracle Autonomous Databaseでのみサポートされています。Autonomous Databaseインスタンスでこのファンクションを使用するには、必要な権限が付与されていることを確認してください。詳細は、SDO_GCDR.ELOC_GRANT_ACCESSを参照してください。
SDO_GCDR.ELOC_ROUTE_DISTANCE
ファンクションは、次のパラメータ・セットのいずれかを受け入れて、2点の間の距離を計算できます:
- 形式化されていない住所の使用: 完全な住所が単一のフィールドに格納されている(つまり、形式化されていない)場合、
start_address
およびend_address
パラメータを指定します。 - 地理座標の使用:
start_longitude
、start_latitude
、end_longitude
およびend_latitude
パラメータを指定して、出発地と目的地を決定します。
各パラメータ入力には、表またはビューの列、または明示的な文字列または数値を指定できます。
例
次の例では、2つの住所位置間のトラックの最短ルート距離(マイル)を計算します。
SELECT SDO_GCDR.ELOC_ROUTE_DISTANCE('shortest', 'mile', '1 Oracle Dr, Nashua, NH', '77 Massachusetts Ave, Cambridge, MA', 'US', 'truck') route_dist FROM DUAL;
ROUTE_DIST
----------
33.22
次の例では、経度座標と緯度座標を使用して、2点間の自動車の最速ルート距離(マイル)を計算します。
SELECT SDO_GCDR.ELOC_ROUTE_DISTANCE('fastest', 'mile', -122.39436, 37.79579, -122.40459, 37.74211,'auto') route_dist FROM DUAL;
ROUTE_DIST
----------
4.51
親トピック: SDO_GCDRパッケージ(ジオコーディング)