All Products
Search
Document Center

MaxCompute:ST_DWITHIN

Last Updated:Aug 27, 2026

Fungsi ST_DWITHIN memeriksa apakah jarak terpendek antara dua objek geografis berada dalam batas jarak yang ditentukan.

Sintaksis

BOOLEAN ST_DWITHIN(GEOGRAPHY <value1>, GEOGRAPHY <value2>, DOUBLE <distance>)

Parameter

Nilai kembalian

Mengembalikan nilai BOOLEAN berdasarkan aturan berikut:

  • TRUE jika jarak terpendek antara value1 dan value2 kurang dari atau sama dengan distance; FALSE jika tidak.

  • FALSE jika value1 atau value2 merupakan objek geografis kosong.

Contoh

  • Contoh 1: Periksa apakah jarak terpendek antara dua titik berada dalam ambang batas jarak yang ditentukan.

    -- Mengembalikan FALSE. Jarak antara kedua titik tersebut sekitar 157249,63 meter, yang lebih besar daripada ambang batas yang ditentukan yaitu 157249,0.
    SELECT ST_DWITHIN(ST_GEOGFROMTEXT('POINT(0 0)'), ST_GEOGFROMTEXT('POINT(1 1)'), 157249.0);
    
    -- Mengembalikan TRUE. Jarak antara kedua titik tersebut kurang dari ambang batas yang ditentukan yaitu 157249,7.
    SELECT ST_DWITHIN(ST_GEOGFROMTEXT('POINT(0 0)'), ST_GEOGFROMTEXT('POINT(1 1)'), 157249.7);
  • Contoh 2: Penanganan objek geografis kosong

    -- Mengembalikan FALSE karena salah satu objek geografisnya kosong.
    SELECT ST_DWITHIN(ST_GEOGFROMTEXT('POINT(0 0)'), ST_GEOGFROMTEXT('POINT EMPTY'), 157249.7);
  • Contoh 3: Periksa apakah suatu titik berada di dalam poligon dengan menggunakan jarak 0.

    -- Mengembalikan TRUE karena POINT(0 0) berada di dalam POLYGON, dan jarak terpendeknya adalah 0.
    SELECT ST_DWITHIN(ST_GEOGFROMTEXT('POINT(0 0)'), ST_GEOGFROMTEXT('POLYGON((-1 -1, 1 -1, 1 1, -1 1, -1 -1))'), 0.0);

Topik terkait