MySQL选择where多边形包含点始终为false。

4

我尝试了各种函数,例如MBRWithin、MBRContains、Intersects和Contains(这些函数在这里的许多帖子中都可以找到),但是目前还没有成功。这是简化后的查询:

SELECT * FROM  users
WHERE Intersects( GeomFromText( 'POINT(50 50)' ), GeomFromText( 'POLYGON(0 0, 100 0, 100 100, 0 100, 0 0)' ) );

我原以为它会将条件评估为true(如1=1),然后返回所有用户,但事实并非如此。请告诉我,我做错了什么?
我正在运行MySql 5.5。
1个回答

6
这对我有用:

这对我有用:

SELECT
    *
FROM 
    users
WHERE
    MBRContains(
        GeomFromText('Polygon((0 0,0 100,100 100,100 0,0 0))'),
        GeomFromText('Point(50 50)')) = 1;

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接