我正在尝试反转 MySQL POINT 字段中值的 X 和 Y 坐标。
以下查询运行没有错误,但之后所有 vales 都为空:
UPDATE `Table` SET `column` = PointFromText(CONCAT('"POINT(',Y(`column`),',',X(`column`),')"'))
查询有什么问题?
我正在尝试反转 MySQL POINT 字段中值的 X 和 Y 坐标。
以下查询运行没有错误,但之后所有 vales 都为空:
UPDATE `Table` SET `column` = PointFromText(CONCAT('"POINT(',Y(`column`),',',X(`column`),')"'))
查询有什么问题?
对于 MySQL >= 5.0.82
UPDATE `Table` SET `column` = POINT(Y(`column`), X(`column`))
否则
UPDATE `Table` SET `column` = GeomFromWKB(POINT(Y(`column`), X(`column`)))
像这样更改您的查询
UPDATE `Table` AS t
INNER JOIN `Table` AS l
ON l.id = t.id
SET t.`column` = PointFromText(CONCAT('"POINT(',Y(l.`column`),',',X(l.`column`),')"'))
加入主键。