有没有办法使用MySQL函数从Lat,Lng获取POINT坐标?

时间:2013-10-28 22:34:32

标签: javascript mysql node.js google-maps mercator

我需要从Node.js中的LatLng获取mercator坐标。我可以使用一些模块(例如,node-sphericalmercator)。但这意味着计算是在节点服务器上完成的,而不是在MySQL中完成的:

// Here is pseudo code example
var sphericalmercator = new Sphericalmercator();

res = "SELECT ALL lat, lng FROM table"

var rs = res.map(function(row) {
    return [sphericalmercator.forward([row.lng, row.lat])]
});

// and only then I can do subsequent INSERTs.
INSERT INTO table VALUES POINTFROMTEXT("POINT(rs[0] rs[1])")

但我想在MySQL中直接将LatLng转换为POINT,而不是在Nodejs服务器上。这有什么功能吗?

INSERT INTO table VALUES SomeFuncThatTraslatesToPoint(Lng, Lat)

1 个答案:

答案 0 :(得分:0)

我承认我不是专家,但这就像你想要的那样吗?

Moving lat/lon text columns into a 'point' type column

特别是关于GeomFromText(CONCAT('POINT(', lat, ' ', lng, ')'))

的部分