Mysql
 sql >> Database >  >> RDS >> Mysql

Spostamento di colonne di testo lat./lon. in una colonna di tipo "punto".

Supponendo che tu voglia un SPATIAL indice su questa colonna:

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);

In caso contrario, puoi omettere gli ultimi due passaggi.

Aggiornamento:

Nelle versioni precedenti di MySQL , dovresti compilare Point colonne utilizzando WKT :

UPDATE  mytable
SET     coords = GeomFromText(CONCAT('POINT (', lon, ' ', lat, ')'))