- 类别:
ST_GEOMFROMGEOHASH¶
返回表示 地理哈希 (link removed) 边界的多边形的 GEOMETRY 对象。
地理哈希中的字符数决定了精度。从地理哈希末尾删除字符会导致地理哈希精度降低,并且标识较大的矩形区域。
可选的 precision
实参指定要用于输入地理哈希的精度。例如,为 precision
传递 5
将指定函数使用输入地理哈希的前 5 个字符。
语法¶
ST_GEOMFROMGEOHASH( <geohash> [, <precision> ] )
实参¶
必填:
geohash
实参必须是地理哈希。
可选:
precision
要在地理哈希中使用的字符数。您可以指定一个介于
1
和20
之间的值。默认情况下,
precision
是20
,这会生成一个长度为 20 个字符的地理哈希。
返回¶
返回 GEOMETRY 类型的值。
示例¶
以下示例返回地理哈希的 GEOMETRY 对象:
SELECT ST_GEOMFROMGEOHASH('9q9j8ue2v71y5zzy0s4q')
AS geometry_from_geohash,
ST_AREA(ST_GEOMFROMGEOHASH('9q9j8ue2v71y5zzy0s4q'))
AS area_of_geohash;
+---------------------------------+-----------------+
| GEOMETRY_FROM_GEOHASH | AREA_OF_GEOHASH |
|---------------------------------+-----------------|
| { | 5.492996255e-26 |
| "coordinates": [ | |
| [ | |
| [ | |
| -1.223061000000001e+02, | |
| 3.755416199999996e+01 | |
| ], | |
| [ | |
| -1.223061000000001e+02, | |
| 3.755416200000012e+01 | |
| ], | |
| [ | |
| -1.223060999999998e+02, | |
| 3.755416200000012e+01 | |
| ], | |
| [ | |
| -1.223060999999998e+02, | |
| 3.755416199999996e+01 | |
| ], | |
| [ | |
| -1.223061000000001e+02, | |
| 3.755416199999996e+01 | |
| ] | |
| ] | |
| ], | |
| "type": "Polygon" | |
| } | |
+---------------------------------+-----------------+
以下示例返回不太精确的地理哈希的 GEOMETRY 对象。函数使用输入地理哈希中的前 6 个字符:
SELECT ST_GEOMFROMGEOHASH('9q9j8ue2v71y5zzy0s4q', 6)
AS geometry_from_less_precise_geohash,
ST_AREA(ST_GEOMFROMGEOHASH('9q9j8ue2v71y5zzy0s4q', 6))
AS area_of_geohash;
+------------------------------------+-----------------+
| GEOMETRY_FROM_LESS_PRECISE_GEOHASH | AREA_OF_GEOHASH |
|------------------------------------+-----------------|
| { | 6.034970284e-05 |
| "coordinates": [ | |
| [ | |
| [ | |
| -1.223107910156250e+02, | |
| 3.755126953125000e+01 | |
| ], | |
| [ | |
| -1.223107910156250e+02, | |
| 3.755676269531250e+01 | |
| ], | |
| [ | |
| -1.222998046875000e+02, | |
| 3.755676269531250e+01 | |
| ], | |
| [ | |
| -1.222998046875000e+02, | |
| 3.755126953125000e+01 | |
| ], | |
| [ | |
| -1.223107910156250e+02, | |
| 3.755126953125000e+01 | |
| ] | |
| ] | |
| ], | |
| "type": "Polygon" | |
| } | |
+------------------------------------+-----------------+