這些函數接受包含 Well-Known Binary (WKB) 表示法的 BLOB 作為引數,並選擇性地接受空間參考系統識別碼 (SRID)。它們會傳回對應的幾何圖形。如需 WKB 格式的說明,請參閱Well-Known Binary (WKB) 格式。
本節中的函數會偵測笛卡爾或地理空間參考系統 (SRS) 中的引數,並傳回適用於 SRS 的結果。
ST_GeomFromWKB() 接受任何幾何類型的 WKB 值作為其第一個引數。其他函數提供類型特定的建構函數,用於建構每個幾何類型的幾何值。
在 MySQL 8.4 之前,這些函數也接受第 14.16.5 節,「MySQL 特有的建立幾何值的函數」中的函數傳回的幾何物件。不再允許幾何引數,並會產生錯誤。若要將呼叫從使用幾何引數移轉至使用 WKB 引數,請遵循以下方針:
將
ST_GeomFromWKB(Point(0, 0))之類的建構重寫為Point(0, 0)。將
ST_GeomFromWKB(Point(0, 0), 4326)之類的建構重寫為ST_SRID(Point(0, 0), 4326)或ST_GeomFromWKB(ST_AsWKB(Point(0, 0)), 4326)。
除非另有指定,否則本節中的函數會依以下方式處理其幾何引數:
如果 WKB 或 SRID 引數為
NULL,則傳回值為NULL。依預設,地理座標(緯度、經度)會以幾何引數的空間參考系統所指定的順序解譯。可以提供選擇性的
options引數,以覆寫預設軸順序。options包含以逗號分隔的清單。唯一允許的key=valuekey值為axis-order,允許的值為lat-long、long-lat和srid-defined(預設值)。如果
options引數為NULL,則傳回值為NULL。如果options引數無效,則會發生錯誤以指示原因。如果 SRID 引數參考未定義的空間參考系統 (SRS),則會發生
ER_SRS_NOT_FOUND錯誤。對於地理 SRS 幾何引數,如果任何引數的經度或緯度超出範圍,則會發生錯誤:
如果經度值不在 (−180, 180] 範圍內,則會發生
ER_LONGITUDE_OUT_OF_RANGE錯誤。如果緯度值不在 [−90, 90] 範圍內,則會發生
ER_LATITUDE_OUT_OF_RANGE錯誤。
顯示的範圍以度為單位。如果 SRS 使用其他單位,則範圍會使用其單位中的對應值。由於浮點數運算,確切的範圍限制會略有偏差。
這些函數可用於從 WKB 值建立幾何圖形:
ST_GeomCollFromWKB(、wkb[,srid[,options]])ST_GeometryCollectionFromWKB(wkb[,srid[,options]])使用其 WKB 表示法和 SRID 建構
GeometryCollection值。這些函數會依照本節簡介中的說明處理其引數。
ST_GeomFromWKB(、wkb[,srid[,options]])ST_GeometryFromWKB(wkb[,srid[,options]])使用其 WKB 表示法和 SRID 建構任何類型的幾何值。
這些函數會依照本節簡介中的說明處理其引數。
ST_LineFromWKB(、wkb[,srid[,options]])ST_LineStringFromWKB(wkb[,srid[,options]])使用其 WKB 表示法和 SRID 建構
LineString值。這些函數會依照本節簡介中的說明處理其引數。
ST_MLineFromWKB(、wkb[,srid[,options]])ST_MultiLineStringFromWKB(wkb[,srid[,options]])使用其 WKB 表示法和 SRID 建構
MultiLineString值。這些函數會依照本節簡介中的說明處理其引數。
ST_MPointFromWKB(、wkb[,srid[,options]])ST_MultiPointFromWKB(wkb[,srid[,options]])使用其 WKB 表示法和 SRID 建構
MultiPoint值。這些函數會依照本節簡介中的說明處理其引數。
ST_MPolyFromWKB(、wkb[,srid[,options]])ST_MultiPolygonFromWKB(wkb[,srid[,options]])使用其 WKB 表示法和 SRID 建構
MultiPolygon值。這些函數會依照本節簡介中的說明處理其引數。
ST_PointFromWKB(wkb[,srid[,options]])使用其 WKB 表示法和 SRID 建構
Point值。ST_PointFromWKB()依照本節簡介所述處理其引數。ST_PolyFromWKB(、wkb[,srid[,options]])ST_PolygonFromWKB(wkb[,srid[,options]])使用其 WKB 表示法和 SRID 建構
Polygon值。這些函數會依照本節簡介中的說明處理其引數。