ST_GeomFromGeoHash - Amazon Redshift
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

ST_GeomFromGeoHash

ST_GeomFromGeoHash 从输入几何体的 geohash 表示形式构造几何体对象。ST_GeomFromGeoHash 返回空间参考标识符 (SRID) 为零 (0) 的二维 (2D) 几何体。有关 geohash 格式的更多信息,请参阅 Wikipedia 中的 Geohash

语法

ST_GeomFromGeoHash(geohash_string)
ST_GeomFromGeoHash(geohash_string, precision)

参数

geohash_string

数据类型为 VARCHAR 的值或计算结果为 VARCHAR 类型的表达式,即几何体的 geohash 表示形式。

精度

数据类型 INTEGER 的值,表示 geohash 的精度。该值是要用作精度的 geohash 的字符数。如果未指定该值、值小于零或大于 geohash_string 长度,则使用 geohash_string 长度。

返回类型

GEOMETRY

如果 geohash_string 为 null,则返回 null。

如果 geohash_string 无效,则返回一个错误。

示例

以下 SQL 返回具有高精度的多边形。

SELECT ST_AsText(ST_GeomFromGeoHash('9qqj7nmxncgyy4d0dbxqz0'));
st_asewkt ----------------------- POLYGON((-115.172816 36.114646,-115.172816 36.114646,-115.172816 36.114646,-115.172816 36.114646,-115.172816 36.114646))

以下 SQL 返回具有高精度的点。

SELECT ST_AsText(ST_GeomFromGeoHash('9qqj7nmxncgyy4d0dbxqz00'));
st_asewkt ----------------------- POINT(-115.172816 36.114646)

以下 SQL 返回具有低精度的多边形。

SELECT ST_AsText(ST_GeomFromGeoHash('9qq'));
st_asewkt ----------------------- POLYGON((-115.3125 35.15625,-115.3125 36.5625,-113.90625 36.5625,-113.90625 35.15625,-115.3125 35.15625))

以下 SQL 返回精度为 3 的多边形。

SELECT ST_AsText(ST_GeomFromGeoHash('9qqj7nmxncgyy4d0dbxqz0', 3));
st_asewkt ----------------------- POLYGON((-115.3125 35.15625,-115.3125 36.5625,-113.90625 36.5625,-113.90625 35.15625,-115.3125 35.15625))