类别:

地理空间函数转换函数

TO_GEOGRAPHY

解析输入,并返回 GEOGRAPHY 类型的值。

另请参阅:

TRY_TO_GEOGRAPHYST_GEOGRAPHYFROMWKBST_GEOGRAPHYFROMWKT

语法

使用下列之一:

TO_GEOGRAPHY( <varchar_expression> [ , <allow_invalid> ] )

TO_GEOGRAPHY( <binary_expression> [ , <allow_invalid> ] )

TO_GEOGRAPHY( <variant_expression> [ , <allow_invalid> ] )

TO_GEOGRAPHY( <geometry_expression> [ , <allow_invalid> ] )
Copy

实参

必填:

varchar_expression

实参必须是字符串表达式,它使用以下格式之一表示有效的几何对象:

  • WKT(已知文本)。

  • WKB(已知二进制)采用十六进制格式(不带前导 0x)。

  • EWKT(扩展的已知文本)。

  • EWKB(扩展的已知二进制文件)采用十六进制格式(不带前导 0x)。

  • GeoJSON。

binary_expression

实参必须是 WKB 或 EWKB 格式的二进制表达式。

variant_expression

实参必须是 GeoJSON 格式的 OBJECT。

geometry_expression

实参必须是 GEOMETRY 且 SRID 为 4326 类型的表达式。

可选:

allow_invalid

如果为 TRUE,即使输入形状无效且无法修复,指定函数也应返回 GEOGRAPHY 或 GEOMETRY 对象。有关详细信息,请参阅 指定如何处理无效的地理空间形状

返回

该函数返回 GEOGRAPHY 类型的值。

使用说明

  • 如果无法将输入解析为支持的格式之一(WKT、WKB、EWKT、EWKB、GeoJSON),则会引发错误。

  • 如果输入格式为 EWKT 或 EWKB 且 SRID 不是 4326,则会引发错误。请参阅 EWKT 和 EWKB 处理备注

  • 要从 WKT 或 EWKT 输入来构造 GEOGRAPHY 对象,还可以使用 ST_GEOGRAPHYFROMWKT

  • 要从 WKB 或 EWKB 输入来构造 GEOGRAPHY 对象,还可以使用 ST_GEOGRAPHYFROMWKB

  • 对于 WKT、EWKT 和 GeoJSON 中的坐标,经度在纬度之前显示(例如 POINT(lon lat))。

示例

该示例展示了带有 VARCHAR 数据的 TO_GEOGRAPHY 函数的简单用法:

select TO_GEOGRAPHY('POINT(-122.35 37.55)');
Copy
+--------------------------------------+
| TO_GEOGRAPHY('POINT(-122.35 37.55)') |
|--------------------------------------|
| POINT(-122.35 37.55)                 |
+--------------------------------------+

以下示例为具有 Z 坐标(以 WKT 格式描述)的地理空间对象返回 GEOGRAPHY 对象:

select TO_GEOGRAPHY('POINTZ(-122.35 37.55 30)');
Copy
+------------------------------------------+
| TO_GEOGRAPHY('POINTZ(-122.35 37.55 30)') |
|------------------------------------------|
| POINTZ(-122.35 37.55 30)                 |
+------------------------------------------+
语言: 中文