ST_GeomFromGeoHash
ST_GeomFromGeoHash construye un objeto geométrico a partir de la representación geohash de una geometría de entrada. ST_GeomFromGeoHash devuelve una geometría bidimensional (2D) con el identificador de referencia espacial (SRID) cero (0). Para obtener más información sobre el formato geohash, consulte Geohash
Sintaxis
ST_GeomFromGeoHash(geohash_string)
ST_GeomFromGeoHash(geohash_string, precision)
Argumentos
- geohash_string
-
Un valor del tipo de datos
VARCHAR
o una expresión que toma el valor de un tipoVARCHAR
, es decir, una representación geohash de una geometría. - precisión
-
Un valor de tipo de datos
INTEGER
que representa la precisión del geohash. El valor es el número de caracteres del geohash que se utilizará como precisión. Si no se especifica el valor, es inferior a cero o es superior a la longitud de geohash_string, se utiliza la longitud de geohash_string.
Tipo de retorno
GEOMETRY
Si geohash_string es nulo, se devuelve el valor nulo.
Si geohash_string no es válido, se devuelve un error.
Ejemplos
El siguiente código SQL devuelve un polígono con precisión alta.
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))
El siguiente código SQL devuelve un punto con precisión alta.
SELECT ST_AsText(ST_GeomFromGeoHash('9qqj7nmxncgyy4d0dbxqz00'));
st_asewkt
-----------------------
POINT(-115.172816 36.114646)
El siguiente código SQL devuelve un polígono con precisión baja.
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))
El siguiente código SQL devuelve un polígono con una precisión de 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))