MaxCompute 提供一系列以 ST_開頭的地理函數,用於構造、轉換和分析 GEOGRAPHY 類型的地理資料。通過這些函數,可以從經緯度座標或 WKT/WKB 文本建立點、線、多邊形等地理對象,提取座標、邊界框等屬性資訊,判斷地理對象之間的包含、相交、覆蓋等空間關係,以及計算地理對象之間的距離。
目前支援的地理函數如下:
分類 | 函數 | 說明 |
構造與解析 | 通過指定的經度和緯度構造一個 Point 類型的地理對象 | |
通過指定的端點構造 LineString 類型的地理對象 | ||
通過指定外部邊界(shell)和 0 個或多個洞(hole)構造 Polygon 類型的地理對象 | ||
將 WKT 格式的字串轉換為 GEOGRAPHY 類型的地理對象 | ||
將 WKB 格式的 BINARY 資料轉換為 GEOGRAPHY 類型的地理對象 | ||
格式化 | 將 GEOGRAPHY 值轉換為 BINARY 類型的 WKB 格式 | |
將 GEOGRAPHY 值轉換為 STRING 類型的 WKT 格式 | ||
屬性訪問 | 擷取 GEOGRAPHY 值的 BoundingBox 資訊 | |
從 POINT 類型的地理對象中擷取經度值 | ||
從 POINT 類型的地理對象中擷取緯度值 | ||
空間運算 | 判斷 value1 對應的地理對象是否包含 value2 對應的地理對象 | |
判斷 value1 對應的地理對象是否覆蓋 value2 對應的地理對象(value2 的所有點均在 value1 的邊界或內部) | ||
判斷兩個地理對象是否相交(存在至少一個公用點) | ||
判斷 value1 對應的地理對象是否被包含在 value2 對應的地理對象中 | ||
判斷兩個地理對象之間的最短距離是否小於或等於指定的距離值 | ||
計算兩個地理對象之間的最短距離,單位為米 |