名称

ST_GeomFromEWKB — 从扩展已知二进制表示 (EWKB) 返回指定的 ST_Geometry 值。

语法

geometry ST_GeomFromEWKB(bytea EWKB);

描述

从 OGC 扩展已知二进制 (EWKT) 表示构建一个 PostGIS ST_Geometry 对象。

[Note]

EWKB 格式不是 OGC 标准,而是一个 PostGIS 特定的格式,其中包括空间参考系统 (SRID) 标识符

增强:2.0.0 引入了对多面体曲面和 TIN 的支持。

此函数支持 3d,且不会删除 z 索引。

此方法支持圆形字符串和曲线。

此函数支持多面体曲面。

此函数支持三角形和三角不规则网络曲面 (TIN)。

示例

NAD 83 长度纬度 (4269) 中的 LINESTRING(-71.160281 42.258729,-71.160837 42.259113,-71.161144 42.25932) 的线字符串二进制表示 0f。

[Note]

注意:即使字节数组用 \ 分隔,并且可能带有 ',如果 standard_conforming_strings 已关闭,我们也需要用 \ 和 '' 转义这两个字符。因此,它看起来并不完全像其 AsEWKB 表示形式。

SELECT ST_GeomFromEWKB(E'\\001\\002\\000\\000 \\255\\020\\000\\000\\003\\000\\000\\000\\344J=
\\013B\\312Q\\300n\\303(\\010\\036!E@''\\277E''K
\\312Q\\300\\366{b\\235*!E@\\225|\\354.P\\312Q
\\300p\\231\\323e1!E@');
[Note]

在 PostgreSQL 9.1+ 中 - standard_conforming_strings 默认设置为开启,而在过去的版本中则设置为关闭。您可以根据需要更改单个查询或数据库或服务器级别的默认值。以下是使用 standard_conforming_strings = on 的方法。在这种情况下,我们使用标准 ansi ' 转义 ',但不会转义斜杠

	    set standard_conforming_strings = on;
SELECT ST_GeomFromEWKB('\001\002\000\000 \255\020\000\000\003\000\000\000\344J=\012\013B
    \312Q\300n\303(\010\036!E@''\277E''K\012\312Q\300\366{b\235*!E@\225|\354.P\312Q\012\300p\231\323e1')

另请参阅

ST_AsBinaryST_AsEWKBST_GeomFromWKB