Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Movendo colunas de texto lat/lon para uma coluna do tipo 'ponto'


Supondo que você queira um SPATIAL índice nesta coluna:
ALTER TABLE mytable ADD coords Point;

UPDATE  mytable
SET     coords = Point(lon, lat);

ALTER TABLE mytable MODIFY coords POINT NOT NULL;

CREATE SPATIAL INDEX sx_mytable_coords ON mytable(coords);

Caso contrário, você pode omitir as duas últimas etapas.

Atualização:

Em versões anteriores do MySQL , você precisaria preencher Point colunas usando WKT :
UPDATE  mytable
SET     coords = GeomFromText(CONCAT('POINT (', lon, ' ', lat, ')'))