カテゴリ:

地理空間関数

ST_DWITHIN

2点間の最小測地線距離が指定された距離内にある場合は、 TRUE を返します。それ以外の場合は、 FALSE を返します。

パラメーターがポイントではない GEOGRAPHY 値の場合(例:線やポリゴン)、2つの値の最も近い2つのポイント間の最小測地線距離に基づいて TRUE または FALSE を返します。

構文

ST_DWITHIN( <geography_expression_1> , <geography_expression_2> , <distance_in_meters> )

引数

地理式1

引数は GEOGRAPHY 型の式でなければなりません。

地理式2

引数は GEOGRAPHY 型の式でなければなりません。

メートル単位の距離

引数は REAL 型の式でなければなりません。距離はメートル単位です。

戻り値

BOOLEAN を返します。

使用上の注意

  • 入力が NULL の場合は NULL を返します。

  • 式:

    ST_DWITHIN(g1, g2, distance_expression)
    

    次と同等:

    ST_DISTANCE(g1, g2) <= distance_expression
    

    しかし、場合によってはより速く実行されます。

赤道に沿って1°離れた2点間のメートル単位の距離が150,000メートル未満であるため、 TRUE を返します。

SELECT ST_DWITHIN (ST_MAKEPOINT(0, 0), ST_MAKEPOINT(1, 0), 150000);
+-------------------------------------------------------------+
| ST_DWITHIN (ST_MAKEPOINT(0, 0), ST_MAKEPOINT(1, 0), 150000) |
|-------------------------------------------------------------|
| True                                                        |
+-------------------------------------------------------------+