【发布时间】:2023-03-08 01:05:01
【问题描述】:
考虑以下查询:
SELECT ST_Simplify(SHAPE, 1.0)
FROM nhdflowline
WHERE OGR_FID = 12701;
运行时出现以下错误:
Error Code: 3618. st_simplify(LINESTRING, ...) has not been implemented for geographic spatial reference systems.
但是,如果我这样做,它工作得很好:
SELECT ST_Simplify(ST_GeomFromText(ST_AsText(SHAPE)), 1.0)
FROM nhdflowline
WHERE OGR_FID = 12701;
这对我来说没有任何意义。我不能直接在几何图形上运行 ST_Simplify - 我必须将其转换为文本,然后 返回 到几何图形才能运行 ST_Simplify?
我错过了什么吗?我正在运行 MySQL 8.0.22。
【问题讨论】:
-
因为它说它还没有实现,所以尝试 8.0,.26 或等待并使用提示告诉你的内容
-
@nbk - Michael Entin 成功了。有多种类型的几何形状。只是其中一些支持,但并非全部支持。当我发布问题时,我没有意识到有多种类型的几何图形,但存在的事实表明我确实“错过了一些东西”。
-
如错误消息 cöearöy 所述,您需要将 iot 转换为 ST_Simplify 能够理解的正确格式。正如您在第二个查询中所展示的那样,它将被实现,因此将发生内部转换版本。使用使用 8.0,.26 的 dbfiddklle 对其进行测试
标签: mysql gis spatial mysql-8.0 spatial-query