sql >> Databáze >  >> RDS >> Mysql

Přesouvání textových sloupců zeměpisné šířky/délky do sloupce typu „bod“.

Za předpokladu, že chcete SPATIAL index v tomto sloupci:

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

Pokud tak neučiníte, můžete poslední dva kroky vynechat.

Aktualizace:

V dřívějších verzích MySQL , budete muset vyplnit Point sloupců pomocí WKT :

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


  1. Dotaz Mysql na vzdálenost

  2. Přidání textu do databáze

  3. Rekurzivní dotaz používaný pro tranzitivní uzávěr

  4. Jaký je rozdíl mezi postgres a postgresql_psycopg2 jako databázovým strojem pro django?