带有 ST_GeomFromText 的 postgresql 查询不起作用

vir*_*ual 0 postgresql postgis geospatial spatial-query spatial-index

我正在尝试执行 Postgres 查询:

SELECT a.a_geom
FROM a
WHERE 
ST_within(a.a_geom::geometry,ST_GeomFromText('Polygon((1,1),(4,1),(4,4),(4,1))'));
Run Code Online (Sandbox Code Playgroud)

但是这个查询给出了错误:

错误:解析错误 - 无效的几何
SQL 状态:XX000
提示:“多边形((1,1”<--解析几何中位置 12 处的错误)

yie*_*ood 5

坐标以空格分隔,点以逗号分隔,整个点列表包含在括号中。

除了语法问题之外,您的多边形需要关闭,即您需要重复点列表的起点和终点。

这会生成您的多边形:

select ST_GeomFromText('Polygon((1 1,4 1,4 4,4 1,1 1))')
Run Code Online (Sandbox Code Playgroud)