Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:
Databricks SQL
Databricks Runtime 17.1 y versiones posteriores
Important
Esta característica está en versión preliminar pública.
Nota:
Esta característica no está disponible en almacenes clásicos de Databricks SQL. Para más información sobre los almacenes de SQL de Databricks, consulte Tipos de almacenamiento de SQL.
Devuelve el geohash del valor de entrada GEOMETRY en la precisión especificada. Si no se especifica la precisión, la expresión se comporta como si la precisión especificada fuera -1.
Syntax
st_geohash ( geoExpr [, precisionExpr] )
Arguments
-
geoExpr: UnGEOMETRYvalor. -
precisionExpr: precisión opcional (número de dígitos significativos) de la geohash de salida.
Returns
Valor de tipo STRING, que representa la geohash de la geometría de entrada.
Más precisamente:
- Si la geometría de entrada está vacía, la expresión devuelve
NULL. - Si la precisión es 0, se devuelve la cadena vacía.
- Si la precisión es positiva, la expresión devuelve el valor de geohash del centro del rectángulo de selección de la geometría con la precisión especificada.
- Si la precisión es negativa, la expresión devuelve el valor de geohash que corresponde al cubo de cuadrícula de geohash con la precisión máxima (pero no superior a 12) que cubre completamente el rectángulo de selección de la geometría de entrada. Si un cubo de la cuadrícula geohash de este tipo no existe, se devuelve la cadena vacía.
Consulta Wikipedia para obtener más información sobre geohashes.
La función devuelve NULL si la entrada es NULL.
Condiciones de error
- Si la entrada contiene coordenadas de longitud fuera del intervalo [-180, 180], la función devuelve ST_INVALID_ARGUMENT. LONGITUDE_OUT_OF_BOUNDS.
- Si la entrada contiene coordenadas de latitud fuera del intervalo [-90, 90], la función devuelve ST_INVALID_ARGUMENT. LATITUDE_OUT_OF_BOUNDS.
Examples
-- Returns the geohash of a point at default precision.
> SELECT st_geohash(st_geomfromtext('POINT(-122.4261475 37.77374268)'));
9q8yyhebpbpb
-- Returns the geohash of a point at precision 6.
> SELECT st_geohash(st_geomfromtext('POINT(-122.4261475 37.77374268)'), 6);
9q8yyh
-- Returns the geohash of a linestring at default precision.
> SELECT st_geohash(st_geomfromtext('LINESTRING(-122.43 37.77,-122.42 37.78)'));
9q8yy
-- Returns the geohash of a linestring at precision 9.
> SELECT st_geohash(st_geomfromtext('LINESTRING(-122.43 37.77,-122.42 37.78)'), 9);
9q8yyhsz6
-- Returns empty string for a large geometry that doesn't fit in any geohash bucket.
> SELECT length(st_geohash(st_geomfromtext('LINESTRING(0 0,60 60)')));
0