简体   繁体   English

MySQL空间查询

[英]MySQL spatial query

I had a normal table. 我有一张普通桌子。 Now i added a spatial column 现在我添加了一个空间列

ALTER TABLE roadData ADD pt POINT ;

and now my table has null values : 现在我的表具有空值: 在此处输入图片说明

Now in MySQL tutorial insert statement is used: 现在在MySQL教程中使用insert语句:

INSERT INTO geom VALUES (ST_GeomFromText('POINT(1 1)'));

but i want to to do it in already existing table removing null values and insert point data based on Latitude and Longitude give in each row. 但是我想在已经存在的表中删除空值,并在每行中基于纬度和经度插入点数据。 Like 喜欢

INSERT INTO pt VALUES (ST_GeomFromText('POINT(latitude longitude)'));

and also make a spatial index. 并做出空间索引 How can I do it? 我该怎么做?

That's an UPDATE STATEMENT and not an INSERT STATEMENT , try this: 那是一个UPDATE STATEMENT而不是INSERT STATEMENT ,试试这个:

UPDATE geom t
SET t.pt = ST_GeomFromText(CONCAT('POINT(',t.longitude,t.latitude,')'))

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM