3.5.12. 空間関数
空間関数は、地理データの作業機能 を提供 します。Data Virtualization は JTS Topology Suite に依存して、SQL Revision 1.1 の OpenGIS Simple Features Specification との部分的な互換性を提供します。特定の機能の詳細は、Open GIS 仕様または PostGIS マニュアル を参照してください。
ほとんどの Geometry 機能は、WKB 形式および WKT 形式による 2 つのディメンションに制限されます。
Data Virtualization とプッシュダウンの結果には若干の違いがあり、さらに改良する必要があります。
ST_GeomFromText
WKT 形式の Clob からジオメトリーを返します。
ST_GeomFromText(text [, srid])
ST_GeomFromText(text [, srid])
テキスト
は CLOB の srid
で、空間参照識別子(SRID)を表す任意の整数です。戻り値はジオメトリーです。
ST_GeogFromText
(E)WKT 形式の Clob から地理を返します。
ST_GeogFromText(text)
ST_GeogFromText(text)
テキスト
は CLOB で、srid
は任意の整数です。戻り値は地理です。
ST_GeomFromWKB/ST_GeomFromBinary
WKB 形式の BLOB からジオメトリーを返します。
ST_GeomFromWKB(bin [, srid])
ST_GeomFromWKB(bin [, srid])
bin
は BLOB で、srid
はオプションの整数です。戻り値はジオメトリーです。
ST_GeomFromEWKB
EWKB 形式の BLOB からジオメトリーを返します。
ST_GeomFromEWKB(bin)
ST_GeomFromEWKB(bin)
bin
は BLOB です。戻り値はジオメトリーです。このバージョンのトランスレーターは、2 つのディメンションでのみ機能します。
ST_GeogFromWKB
(E)WKB 形式の BLOB からジオグラフを返します。
ST_GeomFromEWKB(bin)
ST_GeomFromEWKB(bin)
bin
は BLOB です。戻り値は地理です。このバージョンのトランスレーターは、2 つのディメンションでのみ機能します。
ST_GeomFromEWKT
EWKT 形式の文字大きなオブジェクト(CLOB)からジオメトリーを返します。
ST_GeomFromEWKT(text)
ST_GeomFromEWKT(text)
テキスト
は CLOB です。戻り値はジオメトリーです。このバージョンのトランスレーターは、2 つのディメンションでのみ機能します。
ST_GeomFromGeoJSON
GeoJSON 形式の CLOB からジオメトリーを返します。
ST_GeomFromGeoJson(`text` [, srid])
ST_GeomFromGeoJson(`text` [, srid])
テキスト
は CLOB で、srid
は任意の整数です。戻り値はジオメトリーです。
ST_GeomFromGML
GML2 形式の CLOB からジオメトリーを返します。
ST_GeomFromGML(text [, srid])
ST_GeomFromGML(text [, srid])
テキスト
は CLOB で、srid
は任意の整数です。戻り値はジオメトリーです。
ST_AsText
ST_AsText(geom)
ST_AsText(geom)
ジオメトリーは
ジオメトリーです。戻り値は、WKT 形式の CLOB です。
ST_AsBinary
ST_AsBinary(geo)
ST_AsBinary(geo)
geo はジオメトリーまたはジオグラフです。戻り値は、WKB 形式のバイナリー大規模なオブジェクト(BLOB)です。
ST_AsEWKB
ST_AsEWKB(geom)
ST_AsEWKB(geom)
ジオメトリーは
ジオメトリーです。戻り値は EWKB 形式の BLOB です。
ST_AsGeoJSON
ST_AsGeoJSON(geom)
ST_AsGeoJSON(geom)
ジオメトリーは
ジオメトリーです。戻り値は GeoJSON 値を持つ CLOB です。
ST_AsGML
ST_AsGML(geom)
ST_AsGML(geom)
ジオメトリーは
ジオメトリーです。戻り値は GML2 値を持つ CLOB です。
ST_AsEWKT
ST_AsEWKT(geo)
ST_AsEWKT(geo)
geo
はジオメトリーまたはジオグラフです。戻り値は、EWKT 値を持つ CLOB です。EWKT の値は、SRID プレフィックスを持つ WKT 値です。
ST_AsKML
ST_AsKML(geom)
ST_AsKML(geom)
ジオメトリーは
ジオメトリーです。戻り値は、KML 値を持つ CLOB です。KML の値は、簡素化された GML 値であり、SRID 4326 に展開されます。
&&
geom1
および geom2
intersect の境界ボックスに true を返します。
geom1 && geom2
geom1 && geom2
geom1
、geom2
は geometries です。戻り値はブール値です。
ST_Contains
geom1
に geom2
が含まれる場合に true を返します。
ST_Contains(geom1, geom2)
ST_Contains(geom1, geom2)
geom1
、geom2
は geometries です。戻り値はブール値です。
ST_Crosses
ジオメンションをまたがると、true を返します。
ST_Crosses(geom1, geom2)
ST_Crosses(geom1, geom2)
geom1
、geom2
は geometries です。戻り値はブール値です。
ST_Disjoint
ジオメンションがない場合は true を返します。
ST_Disjoint(geom1, geom2)
ST_Disjoint(geom1, geom2)
geom1
、geom2
は geometries です。戻り値はブール値です。
ST_Distance
2 つの地理エントリー間の距離を返します。
ST_Distance(geo1, geo2)
ST_Distance(geo1, geo2)
geo1
、geo2
は共にジオメーターまたは地理的な点があります。戻り値は double です。geography バリアントは評価用にプッシュする必要があります。
ST_DWithin
地理的なエントリーがある間隔内にある場合は true を返します。
ST_DWithin(geom1, geom2, dist)
ST_DWithin(geom1, geom2, dist)
geom1
、geom2
は geometries です。dist
は二重です。戻り値はブール値です。
ST_Equals
2 つの地理的な値が等しい場合は true を返します。Point と order は異なる場合がありますが、ジオメトリーは他方の外部に置くことはできません。
ST_Equals(geom1, geom2)
ST_Equals(geom1, geom2)
geom1
、geom2
は geometries です。戻り値はブール値です。
ST_Intersects
ジオメンティンで交差部分がある場合は true を返します。
ST_Intersects(geo1, geo2)
ST_Intersects(geo1, geo2)
geo1
、geo2
は共にジオメーターまたは地理的な点があります。戻り値はブール値です。geography バリアントは評価用にプッシュする必要があります。
ST_OrderingEquals
geom1
と geom2
が同じ構造を持ち、同じポイントの順序がある場合は true を返します。
ST_OrderingEquals(geom1, geom2)
ST_OrderingEquals(geom1, geom2)
geom1
、geom2
は geometries です。戻り値はブール値です。
ST_Overlaps
地理エントリーが重複している場合、true を返します。
ST_Overlaps(geom1, geom2)
ST_Overlaps(geom1, geom2)
geom1
、geom2
は geometries です。戻り値はブール値です。
ST_Relate
geom1 および geom2 の交差部分をテストするか、または返します。
ST_Relate(geom1, geom2, pattern)
ST_Relate(geom1, geom2, pattern)
geom1
、geom2
は geometries です。Pattern
は、DE-9IM パターン文字列 9 文字です。戻り値はブール値です。
ST_Relate(geom1, geom2)
ST_Relate(geom1, geom2)
geom1
、geom2
は geometries です。戻り値は、DE-9IM の交差部分文字列 9 文字です。
ST_Touches
ジオメトンが連絡すると true を返します。
ST_Touches(geom1, geom2)
ST_Touches(geom1, geom2)
geom1
、geom2
は geometries です。戻り値はブール値です。
ST_Within
geom1
が geom2
内に完全にある場合は true を返します。
ST_Within(geom1, geom2)
ST_Within(geom1, geom2)
geom1
、geom2
は geometries です。戻り値はブール値です。
ST_Area
ジオムのエリアを返します。
ST_Area(geom)
ST_Area(geom)
ジオメトリーは
ジオメトリーです。戻り値は double です。
ST_CoordDim
ジオムのコーディネートディメンションを返します。
ST_CoordDim(geom)
ST_CoordDim(geom)
ジオメトリーは
ジオメトリーです。戻り値は 0 から 3 の間の整数です。
ST_Dimension
ジオメトリーのディメンションを返します。
ST_Dimension(geom)
ST_Dimension(geom)
ジオメトリーは
ジオメトリーです。戻り値は 0 から 3 の間の整数です。
ST_EndPoint
LineString geom の終了ポイントを返します。geom
が LineString ではない場合に null を返します。
ST_EndPoint(geom)
ST_EndPoint(geom)
ジオメトリーは
ジオメトリーです。戻り値はジオメトリーです。
ST_ExteriorRing
ポリジーンジオムの exterior リングまたは shell LineString を返します。ジオム
がポリモーンではない場合に null を返します。
ST_ExteriorRing(geom)
ST_ExteriorRing(geom)
ジオメトリーは
ジオメトリーです。戻り値はジオメトリーです。
ST_GeometryN
nth geometry をジオムの指定の 1 ベースのインデックスで返します。指定のインデックスのジオメトリーが存在しない場合に null を返します。コレクションでないタイプは、最初のインデックスで自身を返します。
ST_GeometryN(geom, index)
ST_GeometryN(geom, index)
geom
はジオメトリーです。インデックスは整数です。戻り値はジオメトリーです。
ST_GeometryType
ジオム
のタイプ名を ST_name として返します。name は LineString、Posplygon、Point などになります。
ST_GeometryType(geom)
ST_GeometryType(geom)
ジオメトリーは
ジオメトリーです。戻り値は文字列です。
ST_HasArc
ジオメトリーに円形の文字列があるかどうかをテストします。トランスレーターは曲線化されたジオメトリータイプで機能しないため、false
を報告します。
ST_HasArc(geom)
ST_HasArc(geom)
ジオメトリーは
ジオメトリーです。戻り値はジオメトリーです。
ST_InteriorRingN
nth interior ring LinearString geometry を、ジオムの指定の 1 ベースのインデックスで返します。指定されたインデックスのジオメトリーが存在しない場合や、ジオム
がポリモーンではない場合に null を返します。
ST_InteriorRingN(geom, index)
ST_InteriorRingN(geom, index)
geom
はジオメトリーです。インデックスは整数です。戻り値はジオメトリーです。
ST_IsClosed
LineString geom
が閉じられている場合に true を返します。geom
が LineString でない場合、false を返します。
ST_IsClosed(geom)
ST_IsClosed(geom)
ジオメトリーは
ジオメトリーです。戻り値はブール値です。
ST_IsEmpty
ポイントのセットが空の場合は true を返します。
ST_IsEmpty(geom)
ST_IsEmpty(geom)
ジオメトリーは
ジオメトリーです。戻り値はブール値です。
ST_IsRing
LineString geom
がリングの場合、true を返します。geom
が LineString ではない場合は false を返します。
ST_IsRing(geom)
ST_IsRing(geom)
ジオメトリーは
ジオメトリーです。戻り値はブール値です。
ST_IsSimple
ジオム
が単純な場合は true を返します。
ST_IsSimple(geom)
ST_IsSimple(geom)
ジオメトリーは
ジオメトリーです。戻り値はブール値です。
ST_IsValid
ジオム
が有効な場合は true
を返します。
ST_IsValid(geom)
ST_IsValid(geom)
ジオメトリーは
ジオメトリーです。戻り値はブール値です。
ST_Length
(Multi)LineString の長さを返します。それ以外の場合は 0 を返します。
ST_Length(geo)
ST_Length(geo)
geo
はジオメトリーまたはジオグラフです。戻り値は double です。geography バリアントは評価用にプッシュする必要があります。
ST_NumGeometries
ジオメーム内の地理エントリーの数を返し ます
。ジオメトリーコレクションでなければ、1 を返します。
ST_NumGeometries(geom)
ST_NumGeometries(geom)
ジオメトリーは
ジオメトリーです。戻り値は整数です。
ST_NumInteriorRings
ポリgonジオメトリー内の内部リングの数を返します。ジオム
がポリモーンではない場合に null を返します。
ST_NumInteriorRings(geom)
ST_NumInteriorRings(geom)
ジオメトリーは
ジオメトリーです。戻り値は整数です。
ST_NunPoints
ジオム
内のポイント数を返します。
ST_NunPoints(geom)
ST_NunPoints(geom)
ジオメトリーは
ジオメトリーです。戻り値は整数です。
ST_PointOnSurface
地図の地図に確実に配置できるポイントを返します。
ST_PointOnSurface(geom)
ST_PointOnSurface(geom)
ジオメトリーは
ジオメトリーです。戻り値はポイントジオメトリーです。
ST_Perimeter
(Multi)Polygon geom の境界を返します。geom
が(Multi)Polygon ではない場合に 0 を返します。
ST_Perimeter(geom)
ST_Perimeter(geom)
ジオメトリーは
ジオメトリーです。戻り値は double です。
ST_PointN
指定の 1 ベースのインデックスの n 番目のポイントをジオムで返します。指定されたインデックスのポイントが存在しない場合や、geom
が LineString ではない場合に null を返します。
ST_PointN(geom, index)
ST_PointN(geom, index)
geom
はジオメトリーです。インデックスは整数です。戻り値はジオメトリーです。
ST_SRID
ジオメトリーの SRID を返します。
ST_SRID(geo)
ST_SRID(geo)
geo
はジオメトリーまたはジオグラフです。戻り値は整数です。null ではなく 0 値は、null 以外のジオメトリーの不明な SRID に対して返されます。
ST_SetSRID
指定のジオメトリーの SRID を設定します。
ST_SetSRID(geo, srid)
ST_SetSRID(geo, srid)
geo
はジオメトリーまたはジオグラフです。Srid
は整数です。戻り値は geo
の値と同じです。SRID メタデータのみが変更されます。変換は実行されません。
ST_StartPoint
LineString geom の開始点を返します。geom
が LineString ではない場合に null を返します。
ST_StartPoint(geom)
ST_StartPoint(geom)
ジオメトリーは
ジオメトリーです。戻り値はジオメトリーです。
ST_X
X ordinate 値を返します。ポイントが空の場合は null を返します。ジオメトリーがポイントではない場合に例外が発生します。
ST_X(geom)
ST_X(geom)
ジオメトリーは
ジオメトリーです。戻り値は double です。
ST_Y
Y ordinate 値を返します。ポイントが空の場合は null を返します。ジオメトリーがポイントではない場合に例外が発生します。
ST_Y(geom)
ST_Y(geom)
ジオメトリーは
ジオメトリーです。戻り値は double です。
ST_Z
Z ordinate 値を返します。ポイントが空の場合は null を返します。ジオメトリーがポイントではない場合に例外が発生します。通常、トランスレーターは 2 つ以上のディメンションと機能しないため、null
を返します。
ST_Z(geom)
ST_Z(geom)
ジオメトリーは
ジオメトリーです。戻り値は double です。
ST_Boundary
指定のジオメトリーの境界を計算します。
ST_Boundary(geom)
ST_Boundary(geom)
ジオメトリーは
ジオメトリーです。戻り値はジオメトリーです。
ST_Buffer
ジオム
の距離内にあるジオメトリーを計算します。
ST_Buffer(geom, distance)
ST_Buffer(geom, distance)
ジオメトリーは
ジオメトリーです。距離
は 2 倍です。戻り値はジオメトリーです。
ST_Centroid
地理的な地理的な中央ポイントを計算します。
ST_Centroid(geom)
ST_Centroid(geom)
ジオメトリーは
ジオメトリーです。戻り値はジオメトリーです。
ST_ConvexHull
ジオメトリーのすべてのポイントを含む最小のコンバージョンを返します。
ST_ConvexHull(geom)
ST_ConvexHull(geom)
ジオメトリーは
ジオメトリーです。戻り値はジオメトリーです。
ST_CurveToLine
CircularString/CurvedPolygon を LineString/Polygon に変換します。Data Virtualization に現在実装されていません。
ST_CurveToLine(geom)
ST_CurveToLine(geom)
ジオメトリーは
ジオメトリーです。戻り値はジオメトリーです。
ST_Difference
geom2
にない geom1
に含まれるポイントのセットの明確さを計算します。
ST_Difference(geom1, geom2)
ST_Difference(geom1, geom2)
geom1
、geom2
は geometries です。戻り値はジオメトリーです。
ST_Envelope
指定のジオメトリーの 2D 境界ボックスを計算します。
ST_Envelope(geom)
ST_Envelope(geom)
ジオメトリーは
ジオメトリーです。戻り値はジオメトリーです。
ST_Force_2D
z コーディネート値が存在する場合は削除します。
ST_Force_2D(geom)
ST_Force_2D(geom)
ジオメトリーは
ジオメトリーです。戻り値はジオメトリーです。
ST_Intersection
geom1
および geom2
に含まれるポイントのポイントセット交差部分を計算します。
ST_Intersection(geom1, geom2)
ST_Intersection(geom1, geom2)
geom1
、geom2
は geometries です。戻り値はジオメトリーです。
ST_Simplify
Douglas-Peucker アルゴリズムを使用してジオメトリーを簡素化しますが、無効なジオメトリーまたは空のジオメトリーを単純化します。
ST_Simplify(geom, distanceTolerance)
ST_Simplify(geom, distanceTolerance)
ジオメトリーは
ジオメトリーです。distanceTolerance
は 2 倍です。戻り値はジオメトリーです。
ST_SimplifyPreserveTopology
Douglas-Peucker アルゴリズムを使用してジオメトリーを簡素化します。有効なジオメトリーを常に返します。
ST_SimplifyPreserveTopology(geom, distanceTolerance)
ST_SimplifyPreserveTopology(geom, distanceTolerance)
ジオメトリーは
ジオメトリーです。distanceTolerance
は 2 倍です。戻り値はジオメトリーです。
ST_SnapToGrid
ジオメトリー内のすべてのポイントを、指定したサイズのグリッドへすべて移動します。
ST_SnapToGrid(geom, size)
ST_SnapToGrid(geom, size)
ジオメトリーは
ジオメトリーです。サイズは二重です。戻り値はジオメトリーです。
ST_SymDifference
geom2 と交差しない geom1 の一部を返します。
ST_SymDifference(geom1, geom2)
ST_SymDifference(geom1, geom2)
geom1
、geom2
はジオメトリーです。戻り値はジオメトリーです。
ST_Transform
ジオメトリーの値をあるコーディネートシステムから別のシステムに変換します。
ST_Transform(geom, srid)
ST_Transform(geom, srid)
ジオメトリーは
ジオメトリーです。Srid
は整数です。戻り値はジオメトリーです。SPATIAL_REF_SYS ビューに、srid
の値と geometry 値の SRID が存在している。
ST_Union
すべての geom1
および geom2
を含むポイントセットを表すジオメトリーを返します。
ST_Union(geom1, geom2)
ST_Union(geom1, geom2)
geom1
、geom2
は geometries です。戻り値はジオメトリーです。
ST_Extent
すべてのジオメトリーの値について 2D の境界ボックスを計算します。すべての値に同じ SRID が必要です。
ST_Extent(geom)
ST_Extent(geom)
ジオメトリーは
ジオメトリーです。戻り値はジオメトリーです。
ST_Point
指定のコーディネートの Point を上書きします。
ST_Point(x, y)
ST_Point(x, y)
X と y は 2 倍です。戻り値は Point geometry です。
ST_Polygon
指定されたシェルおよび SRID で Polygon を返します。
ST_Polygon(geom, srid)
ST_Polygon(geom, srid)
ジオム
は線形リングジオメトリーで、srid
は整数です。戻り値は Polygon geometry です。