プライマリ・コンテンツに移動
Oracle® Spatial and Graph開発者ガイド
12cリリース1 (12.1)
B72470-07
目次へ移動
目次
索引へ移動
索引

前
次

22.5 SDO_GCDR.GEOCODE_ALL

書式

SDO_GCDR.GEOCODE_ALL(
     gc_username  IN VARCHAR2, 
     addr_lines   IN SDO_KEYWORDARRAY, 
     country      IN VARCHAR2, 
     match_mode   IN VARCHAR2 
     ) RETURN SDO_ADDR_ARRAY;

説明

形式化されていない住所に関連付けられたすべての住所をジオコードして、結果をSDO_ADDR_ARRAYオブジェクトとして戻します。

パラメータ

gc_username

ジオコーディングを行うデータを含む表を所有するユーザー名を指定します。

addr_lines

ジオコード対象の形式化されていない住所を表す文字列の配列を、引用符で囲んで指定します。SDO_KEYWORDARRAY型の詳細は、「SDO_KEYWORDARRAY型」を参照。

country

国名またはISOの国コード。

match_mode

ジオコーディング操作の一致モードを指定します。一致モードの詳細は、「一致モード」を参照してください。

使用上の注意

このファンクションは、SDO_ADDR_ARRAY型のオブジェクトを戻します(「SDO_ADDR_ARRAY型」を参照)。実行する操作はSDO_GCDR.GEOCODEファンクションと同じですが、複数の住所に対する結果を戻すことができます。その場合、戻されるSDO_ADDR_ARRAYオブジェクトには、複数のSDO_GEO_ADDRオブジェクトが含まれます。アプリケーションの他の操作で住所を選択する必要がある場合、戻された各住所の情報を使用して、選択を簡単に行うことができます。

戻されるSDO_ADDR_ARRAY配列の各SDO_GEO_ADDRオブジェクトは、addr_linesパラメータの基準に一致する通りの各セグメントの中心点を示します。たとえば、大通りが2つの郵便番号の地区にまたがっている場合、または2つの別の郵便番号の地区内にそれぞれ大通りと呼ばれる通りがある場合に、このファンクションで大通り、都市および州を指定すると、戻されるSDO_ADDR_ARRAY配列には2つのSDO_GEO_ADDRオブジェクトが含まれます。各オブジェクトには、異なる郵便番号の地区にある大通りの中心点が反映されます。入力された住所に家または建物の番号が含まれていない場合、または存在しない番号が含まれている場合でも、各SDO_GEO_ADDRオブジェクトは家または建物の番号を示します。これは通りのセグメントの中心点に位置する家または建物の番号です。

次の例では、ジオコード結果の配列を戻します。各結果には、California州San Francisco市のClay通りを含むすべての郵便番号の地区について、その地区のClay通りの中心点が反映されます。結果の配列には4つのSDO_GEOR_ADDRオブジェクトが含まれます。各オブジェクトには、Clay通りを含む4つの地区の郵便番号(94108、94115、94118および94109)ごとに、Clay通りのセグメントの中心点に位置する家が反映されます。

SELECT SDO_GCDR.GEOCODE_ALL('SCOTT',
  SDO_KEYWORDARRAY('Clay St', 'San Francisco, CA'),
  'US', 'DEFAULT') FROM DUAL;
 
SDO_GCDR.GEOCODE_ALL('SCOTT',SDO_KEYWORDARRAY('CLAYST','SANFRANCISCO,CA'),'US
--------------------------------------------------------------------------------
SDO_ADDR_ARRAY(SDO_GEO_ADDR(1, SDO_KEYWORDARRAY(), NULL, 'CLAY ST', NULL, NULL,
'SAN FRANCISCO', NULL, 'CA', 'US', '94109', NULL, '94109', NULL, '1698', 'CLAY',
 'ST', 'F', 'F', NULL, NULL, 'L', 0, 23600700, '????#ENUT?B281CP?', 1, 'DEFAULT'
, -122.42093, 37.79236, '????4101010??004?'), SDO_GEO_ADDR(1, SDO_KEYWORDARRAY()
, NULL, 'CLAY ST', NULL, NULL, 'SAN FRANCISCO', NULL, 'CA', 'US', '94111', NULL,
 '94111', NULL, '398', 'CLAY', 'ST', 'F', 'F', NULL, NULL, 'L', 0, 23600678, '??
??#ENUT?B281CP?', 1, 'DEFAULT', -122.40027, 37.79499, '????4101010??004?'), SDO_
GEO_ADDR(1, SDO_KEYWORDARRAY(), NULL, 'CLAY ST', NULL, NULL, 'SAN FRANCISCO', NU
LL, 'CA', 'US', '94108', NULL, '94108', NULL, '978', 'CLAY', 'ST', 'F', 'F', NUL
L, NULL, 'L', 0, 23600689, '????#ENUT?B281CP?', 1, 'DEFAULT', -122.40904, 37.793
85, '????4101010??004?'), SDO_GEO_ADDR(1, SDO_KEYWORDARRAY(), NULL, 'CLAY ST', N
ULL, NULL, 'SAN FRANCISCO', NULL, 'CA', 'US', '94115', NULL, '94115', NULL, '279
8', 'CLAY', 'ST', 'F', 'F', NULL, NULL, 'L', 0, 23600709, '????#ENUT?B281CP?', 1
, 'DEFAULT', -122.43909, 37.79007, '????4101010??004?'), SDO_GEO_ADDR(1, SDO_KEY
WORDARRAY(), NULL, 'CLAY ST', NULL, NULL, 'SAN FRANCISCO', NULL, 'CA', 'US', '94
118', NULL, '94118', NULL, '3698', 'CLAY', 'ST', 'F', 'F', NULL, NULL, 'L', 0, 2
3600718, '????#ENUT?B281CP?', 1, 'DEFAULT', -122.45372, 37.78822, '????4101010??
004?'))