Mysql
 sql >> база данни >  >> RDS >> Mysql

Създаване на MySQL пространствена колона - Тип данни на точка с lat long без използване на таблицата Alter

В полето на точката има данни за географска ширина и дължина, съхранени в него и те могат да бъдат извлечени доста лесно, ако е необходимо. Ако приемем, че вашето поле за точка е име pt, следната заявка дава тази информация.

SELECT ST_Y(pt), ST_X(pt) FROM my_spatial_table;

Това е абсолютно същото като да се направи

SELECT Y(pt), X(pt) FROM my_spatial_table;

тъй като X и ST_X са псевдоними. Така че накратко се нуждаете само от полето за точки.

Можете да добавите вашето pt поле, както следва:

ALTER TABLE my_table ADD COLUMN GEOMETRY;

След това можете да преместите данните от съществуващите колони за географска ширина и дължина, както следва:

UPDATE my_table SET pt = PointFromText(CONCAT('POINT(',longitude,' ',latitude,')'))

За повече подробности относно това, моля, вижте:https://stackoverflow.com/a/7135890/267540
http://dev.mysql .com/doc/refman/5.7/en/populating-spatial-columns.html




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Припокриваща се заявка за резервация

  2. MySQL синтаксис за Join Update

  3. Създаване на функционалност за търсене с Laravel 4

  4. Повишаване на нивото на управление на MySQL, MariaDB, PostgreSQL и MongoDB

  5. Код на грешка:2013. Загубена връзка с MySQL сървър по време на заявка