全部產品
Search
文件中心

PolarDB:ST_CreateWorkspace

更新時間:Oct 24, 2024

基於關係表格儲存體的拓撲網路資料建立地圖匹配工作空間,後續道路匹配在工作空間中進行。

文法

boolean ST_CreateWorkspace(text wsname, text sql);

參數

參數名稱

描述

wsname

工作空間名稱,具有唯一性。

sql

查詢SQL語句,用於構建工作空間中的拓撲網路記憶體形態。

傳回值

傳回值

描述

t

建立成功。

f

建立失敗。

描述

  • 地圖匹配工作空間包括一系列記憶體狀態的地圖拓撲網路資料,需要建立或載入後才可執行道路匹配。

  • 工作空間名稱需唯一,可通過mapmatching_workspace表查看已有的工作空間。

  • 用於構建工作空間的SQL查詢結果必須包含4個欄位:

    • id:Edge唯一標識,類型為SMALLINT、INTEGER、BIGINT。

    • source:Edge的源節點標識,類型為SMALLINT、INTEGER、BIGINT。

    • target:Edge的目標節點標識,類型為SMALLINT、INTEGER、BIGINT。

    • geometry:Edge的幾何資訊,類型為GEOMETRY,只運行LineString和MultiLineString兩種類型,如果為MultiLineString,則只取第一個子LineString對象。

說明

構建的拓撲網路單位為地圖單位,如果需要進行座標轉換,請使用ST_Transform函數。

樣本

  1. 準備路網資料並構建路網拓撲,詳細步驟快速入門樣本一

  2. 構建工作空間。

    • 所有對象都參與構建工作空間。

      SELECT ST_CreateWorkspace('mm_ws_test1', 'select fid, source, target, geom from network');
    • 經過條件過濾後部分對象參與構建工作空間。

      SELECT ST_CreateWorkspace('mm_ws_test2', $$ select fid, source, target, geom from network where fid > 10 $$);
    • 查看已構建的工作空間。

      SELECT * from mapmatching_workspace;

      返回結果如下:

       ws_id |   ws_name   |                             ws_sql                             | ws_options 
      -------+-------------+----------------------------------------------------------------+------------
           1 | mm_ws_test1 | select fid, source, target, geom from network                  | 
           2 | mm_ws_test2 | select fid, source, target, geom from network where fid > 10  | 
      (2 rows)