solidDB Help : Programming : solidDB geohash functions
  
solidDB geohash functions
Geohash functions provide an efficient way of encoding geographical positional data. Geohash is a latitude/longitude geocode system that subdivides the globe into blocks and gives each block a geohash value.
The geohash value is a one-dimensional hash value that is calculated from a multi-dimensional set of co-ordinates. Locations that are close to each other often (but not always) have geohash values that start with the same character prefix. The longer the shared prefix, the closer the proximity of the locations.
Geohash offers properties like precision, with the possibility of removing characters from the end of a geohash value to increase the size of the block (and reduce precision).
If you create a relational database index that is based on geohash values, queries that are based on the index are more selective than queries that are based on a co-ordinate-based index that has multiple dimensions.
In solidDB, the support for geohashing is limited to the following functionality:
Functions can map co-ordinates to geohash values and geohash values to co-ordinates.
Functions can provide a collection of geohash values that represent basic concepts, for example, adjacent geohash blocks or geohash blocks within a given area.
Conversion functions can be called by using the solidDB API (SA) and query functions can be used in SQL queries.
As a result of these functions, a collection of geohash values can be processed efficiently.
Geohash values up to 23 characters in length are supported. The precision is expressed by the length of the geohash value. Values with 1 character are the least precise, and values with 23 characters are the most precise.
Geohash values are stored in VARCHAR datatypes inside the database. There are no special database data types or search mechanisms.
See
Performance benefits from using a geohash index
Using geohash functions
Geohash SA functions