TRY_TO_GEOMETRY¶
解析输入,并返回 GEOMETRY 类型的值。
此函数与 TO_GEOMETRY 相同,但它在 TO_GEOMETRY 返回错误时将返回 NULL。
- 另请参阅:
语法¶
使用下列之一:
实参¶
必填:
varchar_expression实参必须是字符串表达式,它使用以下格式之一表示有效的几何对象:
WKT (已知文本)。
WKB (已知二进制)采用十六进制格式(不带前导
0x)。EWKT (扩展的已知文本)。
EWKB (扩展的已知二进制文件)采用十六进制格式(不带前导
0x)。GeoJSON。
binary_expression实参必须是 WKB 或 EWKB 格式的二进制表达式。
variant_expression实参必须是 GeoJSON 格式的 OBJECT。
可选:
srid要使用的 SRID 的整数值。
allow_invalid如果为 TRUE,即使输入形状无效且无法修复,指定函数也应返回 GEOGRAPHY 或 GEOMETRY 对象。有关详细信息,请参阅 指定如何处理无效的地理空间形状。
返回¶
该函数返回 GEOMETRY 类型的值。
使用说明¶
如果无法将输入解析为适当的支持格式(WKT、WKB、EWKT、EWKB、GeoJSON),则返回 NULL。
对于 GeoJSON、WKT 和 WKB 输入,如果未指定
srid实参,则生成的 GEOMETRY 对象将 SRID 设置为 0。
示例¶
该示例展示了带有 VARCHAR 数据的 TRY_TO_GEOMETRY 函数的简单用法:
Create a temporary table and insert rows with GEOMETRY values:
This table has columns with data types that the TO_GEOMETRY function accepts as inputs in the following formats:
VARCHAR (WKT/WKB and hex/EWKT/EWKB/GeoJSON)
BINARY (WKB/EWKB)
VARIANT (GeoJSON object)
GEOGRAPHY
Optional srid and allow_invalid values can follow any of these formats. The ST_ASWKB、ST_ASBINARY function
generates valid WKB BINARY values.
The following example tries to convert VARCHAR values in the invalid_wkt_col column to GEOMETRY values,
but the shapes aren't valid: