Anche 12 cifre è ridicolo. Consiglio uno dei seguenti:
DECIMAL(8,6)/(9,6)
è sufficiente per distinguere due persone in piedi una accanto all'altra. E sospetto che il GPS non sia così preciso. Totale:9 byte per le due colonne.
DECIMAL(6,4)/(7,4)
è sufficiente per le case o le imprese, salvo che non c'è una componente verticale. 7 byte.
Altre discussioni sulla precisione lat/lng:http://mysql.rjweb.org/doc .php/latlng#representation_choices o https://stackoverflow.com/a/50126941/1766831
Per quanto riguarda le prestazioni, non c'è molta differenza. Ecco i punti:
- Più posizioni decimali occupano più spazio su disco (e cache ram), quindi rallenta leggermente le cose.
- Più cifre decimali significano più calcoli per lavorare con le cifre. Ancora una volta, questo è solo un leggero successo.
Altre taglie che hai citato:
lat DECIMAL(17, 13)
lon DECIMAL(17, 13)
occupa un totale di 16 byte. Nel frattempo, questa coppia:
lat DECIMAL(14, 12)
lon DECIMAL(15, 12)
è solo un byte più piccolo!