I’m working with map data, and the Latitude/Longitude
extends to 8 decimal places. For example:
Latitude 40.71727401 Longitude -74.00898606
I saw in the Google document which uses:
lat FLOAT( 10, 6 ) NOT NULL, lng FLOAT( 10, 6 ) NOT NULL
however, their decimal places only go to 6.
Should I use FLOAT(10, 8)
or is there another method to consider for storing this data so it’s precise. It will be used with map calculations. Thanks!
Answer
MySQL supports Spatial data types and Point
is a single-value type which can be used. Example:
CREATE TABLE `buildings` ( `coordinate` POINT NOT NULL, /* Even from v5.7.5 you can define an index for it */ SPATIAL INDEX `SPATIAL` (`coordinate`) ) ENGINE=InnoDB; /* then for insertion you can */ INSERT INTO `buildings` (`coordinate`) VALUES (POINT(40.71727401 -74.00898606));