MySQL 依據 OpenGIS 標準實現空間數據類型,支援單一幾何值與幾何集合兩大類。本文整理完整類型對照表、存儲特性與選型指南,助力 GIS 應用開發與空間查詢優化。
| 類型 | 說明 | 適用場景 |
|---|---|---|
| GEOMETRY | 通用幾何類型,可存儲任意單一幾何值 | 列需存儲多種幾何類型時 |
| POINT | 單一點座標 | 標記位置、GPS 軌跡點 |
| LINESTRING | 線串(連續線段集合) | 道路、河流、管線 |
| POLYGON | 多邊形(外環+可選內環) | 行政區劃、建築輪廓、地塊 |
約束: POINT、LINESTRING、POLYGON 列僅接受對應類型值;GEOMETRY 無類型限制。
| 類型 | 說明 | 成員約束 |
|---|---|---|
| MULTIPOINT | 多點集合 | 僅限 POINT |
| MULTILINESTRING | 多線串集合 | 僅限 LINESTRING |
| MULTIPOLYGON | 多多邊形集合 | 僅限 POLYGON |
| GEOMETRYCOLLECTION | 任意幾何對象集合 | 無類型限制 |
選型建議: 業務明確單一類型時優先用具體類型(POINT 等),利於約束與優化;需混合存儲時用 GEOMETRY 或 GEOMETRYCOLLECTION。
ST_Transform)。MyISAM、InnoDB(5.7.5+)、Aria 引擎。NOT NULL。ST_Contains、ST_Intersects、ST_Distance、ST_Within 等。MySQL 空間類型體系完整對標 OpenGIS,單值類型滿足基礎幾何建模,集合類型支援複雜幾何聚合。正確選型、配合 SRID 統一與空間索引,可高效支撐 LBS、地理圖譜、智慧城市等 GIS 業務場景。