Mysql选择多边形包含的点始终为false

时间:2013-05-20 23:31:47

标签: mysql select spatial spatial-query

我尝试了各种功能,如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)' ) );

我希望它将该条件评估为真(如1 = 1)并返回所有用户,但这并没有发生。请告诉我,我做错了什么?

我正在运行MySql 5.5

1 个答案:

答案 0 :(得分:6)

这对我有用:

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