类别:

地理空间函数

ST_GEOMFROMGEOHASH

返回表示 地理哈希 (link removed) 边界的多边形的 GEOMETRY 对象。

地理哈希中的字符数决定了精度。从地理哈希末尾删除字符会导致地理哈希精度降低,并且标识较大的矩形区域。

可选的 precision 实参指定要用于输入地理哈希的精度。例如,为 precision 传递 5 将指定函数使用输入地理哈希的前 5 个字符。

另请参阅:

ST_GEOHASHST_GEOMPOINTFROMGEOHASH

语法

ST_GEOMFROMGEOHASH( <geohash> [, <precision> ] )
Copy

实参

必填:

geohash

实参必须是地理哈希。

可选:

precision

要在地理哈希中使用的字符数。您可以指定一个介于 120 之间的值。

默认情况下,precision20,这会生成一个长度为 20 个字符的地理哈希。

返回

返回 GEOMETRY 类型的值。

示例

以下示例返回地理哈希的 GEOMETRY 对象:

SELECT ST_GEOMFROMGEOHASH('9q9j8ue2v71y5zzy0s4q')
  AS geometry_from_geohash,
  ST_AREA(ST_GEOMFROMGEOHASH('9q9j8ue2v71y5zzy0s4q'))
  AS area_of_geohash;
Copy
+---------------------------------+-----------------+
| 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;
Copy
+------------------------------------+-----------------+
| 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"                |                 |
| }                                  |                 |
+------------------------------------+-----------------+
语言: 中文