将地理空间点转换为纬度/经度字段

时间:2018-04-19 13:58:34

标签: mysql sql geospatial

我有一个GEOMETRY POINT类型列的表。我想再添加两列lat DECIMALlng DECIMAL。 怎么办呢?

我的这个表有loc POINT NOT NULL列。 我希望sql脚本在新添加的lat和lng列中更新相应的lattitude和longitude值。

old table
id    loc
1    point(18.545000, 81.782800)
2    point(20.545000, 81.782800)

updated table
id    loc                            lat         lng
1    point(18.545000, 81.782800)     18.545000   81.782800
2    point(20.545000, 81.782800)     20.545000   81.782800

这不起作用

update table
set lat = ST_X(loc);
update table
set lng = ST_Y(loc);

1 个答案:

答案 0 :(得分:0)

我的坏!

这就是答案!

update table
set lat = ST_Y(loc);
update table
set lng = ST_X(loc);